Transmitter and parity permutation method thereof

ABSTRACT

A transmitter is provided. The transmitter includes: a Low Density Parity Check (LDPC) encoder configured to encode input bits to generate parity bits; a parity permutator configured to perform parity permutation by interleaving the parity bits and group-wise interleaving a plurality of bit groups including the interleaved parity bits; and a puncturer configured to puncture some of the parity bits in the group-wise interleaved bit groups, wherein the parity permutator group-wise interleaves the bit groups such that some of the bit groups are positioned at predetermined positions, respectively, and a remainder of the bit groups are positioned without an order within the group-wise interleaved bit groups.

CROSS-REFERENCE TO THE RELATED APPLICATIONS

This application is a continuation of U.S. application Ser. No.16/361,805 filed on Mar. 22, 2019 which is a continuation of U.S.application Ser. No. 15/058,242 filed Mar. 2, 2016, which is now U.S.Pat. No. 10,277,250 issued on Apr. 30, 2019, which claims priority fromKorean Patent Application No. 10-2015-0137182 filed on Sep. 27, 2015 andU.S. Provisional Application No. 62/127,022 filed on Mar. 2, 2015, thedisclosures of which are incorporated herein in their entirety byreference.

BACKGROUND Article I. 1. Field

Apparatuses and methods consistent with the exemplary embodiments of theinventive concept relate to a transmitter and a parity permutationmethod thereof, and more particularly, to a transmitter performingparity permutation on parity bits and a parity permutation methodthereof.

Article II. 2. Description of the Related Art

Broadcast communication services in information oriented society of the21^(st) century are entering an era of digitalization,multi-channelization, bandwidth broadening, and high quality. Inparticular, as a high definition digital television (TV) and portablebroadcasting signal reception devices are widespread, digitalbroadcasting services have an increased demand for a support of variousreceiving schemes.

According to such demand, standard groups set up broadcastingcommunication standards to provide various signal transmission andreception services satisfying the needs of a user. Still, however, amethod for providing better services to a user with more improvedperformance is required.

SUMMARY

The exemplary embodiments of the inventive concept may overcomedisadvantages of the related art signal transmitter and receiver andmethods thereof. However, these embodiments are not required to or maynot overcome such disadvantages.

The exemplary embodiments provide a transmitter performing paritypermutation on parity bits by a specific scheme to puncture specificparity bits and a parity permutation method thereof.

According to an aspect of an exemplary embodiment, there is provided atransmitter which may include: a Low Density Parity Check (LDPC) encoderconfigured to encode input bits to generate parity bits; a paritypermutator configured to perform parity permutation by interleaving theparity bits and group-wise interleaving a plurality of bit groupsincluding the interleaved parity bits; and a puncturer configured topuncture some of the parity bits in the group-wise interleaved bitgroups, wherein the parity permutator group-wise interleaves the bitgroups such that some of the bit groups are positioned at predeterminedpositions, respectively, and a remainder of the bit groups arepositioned without an order within the group-wise interleaved bitgroups.

According to an aspect of another exemplary embodiment, there isprovided a method of parity permutation. The method may include:generating parity bits by encoding input bits; performing paritypermutation by interleaving the parity bits and group-wise interleavingon a plurality of bit groups comprising the interleaved parity bits; andpuncturing some of the parity bits in the group-wise interleaved bitgroups, wherein the group-wise interleaving is performed such that someof the bit groups are positioned at predetermined positions,respectively, and a remainder of the bit groups are positioned withoutan order within the group-wise interleaved bit groups.

BRIEF DESCRIPTION OF THE DRAWINGS

The above and/or other aspects of the exemplary embodiments will bedescribed herein with reference to the accompanying drawings, in which:

FIG. 1 is a block diagram for describing a configuration of atransmitter, according to an exemplary embodiment;

FIGS. 2 and 3 are diagrams for describing parity check matrices,according to exemplary embodiments;

FIG. 4 is a diagram illustrating a Low Density Parity Check (LDPC)codeword divided into a plurality of bit groups, according to anexemplary embodiment;

FIG. 5 is a diagram illustrating a parity check matrix having a quasicyclic structure, according to an exemplary embodiment;

FIG. 6 is a diagram for describing a frame structure, according to anexemplary embodiment;

FIGS. 7 and 8 are block diagrams for describing detailed configurationsof a transmitter, according to exemplary embodiments;

FIGS. 9 to 22 are diagrams for describing methods for processingsignaling according to exemplary embodiments;

FIGS. 23 and 24 are block diagrams for describing configurations of areceiver, according to exemplary embodiments;

FIGS. 25 and 26 are diagrams for describing examples of combining LogLikelihood Ratio (LLR) values of a receiver, according to exemplaryembodiments;

FIG. 27 is a diagram illustrating an example of providing information ona length of L1 signaling, according to an exemplary embodiment; and

FIG. 28 is a flow chart for describing a parity permutation method,according to an exemplary embodiment.

DETAILED DESCRIPTION OF THE EXEMPLARY EMBODIMENTS

Hereinafter, exemplary embodiments will be described in more detail withreference to the accompanying drawings.

FIG. 1 is a block diagram for describing a configuration of atransmitter according to an exemplary embodiment.

Referring to FIG. 1, a transmitter 100 includes a Low Density ParityCheck (LDPC) encoder 110, a parity permutator 120 and a puncturer 130.

The LDPC encoder 110 may encode input bits. In other words, the LDPCencoder 110 may perform LDPC encoding on the input bits to generateparity bits, that is, LDPC parity bits.

The input bits are LDPC information bits for the LDPC encoding, and mayinclude outer-encoded bits and zero bits (that is, bits having a 0value), in which the outer-encoded bits include information bits andparity bits (or parity check bits) generated by outer-encoding theinformation bits.

The information bits may be signaling (alternatively referred to assignaling bits or signaling information). The information bits mayinclude information required for a receiver 200 (as illustrated in FIG.23 or 24) to receive and process data or service data (for example,broadcasting data) transmitted from the transmitter 100.

The outer encoding is a coding operation which is performed before innerencoding in a concatenated coding operation, and may use variousencoding schemes such as Bose, Chaudhuri, Hocquenghem (BCH) encodingand/or cyclic redundancy check (CRC) encoding. In this case, an innercode for inner encoding may be an LDPC code.

For LDPC encoding, a specific number of LDPC information bits dependingon a code rate and a code length are required. Therefore, when thenumber of outer-encoded bits generated by outer-encoding the informationbits is less than the required number of LDPC information bits, anappropriate number of zero bits are padded to obtain the required numberof LDPC information bits for the LDPC encoding. Therefore, theouter-encoded bits and the padded zero bits may configure the LDPCinformation bits as many as the number of bits required for the LDPCencoding.

Since the padded zero bits are bits required to obtain the predeterminednumber of bits for the LDPC encoding, the padded zero bits areLDPC-encoded, and then, are not transmitted to the receiver 200. Assuch, a procedure of padding zero bits, or a procedure of padding thezero bits and then, not transmitting the padded zero bits to thereceiver 200 may be referred to as shortening. In this case, the paddedzero bits may be referred to as shortening bits (or shortened bits).

For example, it is assumed that the number of information bits isK_(sig) and the number of bits when M_(outer) parity bits are added tothe information bits by the outer encoding, that is, the number ofouter-encoded bits including the information bits and the parity bits isN_(outer)(=K_(sig)+M_(outer)).

In this case, when the number N_(outer) of outer-encoded bits is lessthan the number K_(ldpc) of LDPC information bits, K_(ldpc)−N_(outer)zero bits are padded so that the outer-encoded bits and the padded zerobits may configure the LDPC information bits together.

The foregoing example describes that zero bits are padded, which is onlyone example.

When the information bits are signaling for data or service data, alength of the information bits may vary depending on the amount of thedata. Therefore, when the number of information bits is greater than thenumber of LDPC information bits required for the LDPC encoding, theinformation bits may be segmented below a specific value.

Therefore, when the number of information bits or the number ofsegmented information bits is less than a number obtained by subtractingthe number of parity bits (that is, M_(outer)) generated by the outerencoding from the number of LDPC information bits, zero bits are paddedas many as the number obtained by subtracting the number ofouter-encoded bits from the number of LDPC information bits so that theLDPC information bits may be formed of the outer-encoded bits and thepadded zero bits.

However, when the number of information bits or the number of segmentedinformation bits are equal to the number obtained by subtracting thenumber of parity bits generated by outer encoding from the number ofLDPC information bits, the LDPC information bits may be formed of theouter-encoded bits without padded zero bits.

The foregoing example describes that the information bits areouter-encoded, which is only one example. However, the information bitsmay not be outer-encoded and configure the LDPC information bits alongwith the zero bits padded depending on the number of information bits oronly the information bits may configure the LDPC information bitswithout separately padding zero bits.

For convenience of explanation, the outer encoding will be describedbelow under an assumption that it is performed by BCH encoding.

In detail, the input bits will be described under an assumption thatthey include BCH encoded bits and the zero bits, the BCH encoded bitsincluding the information bits and BCH parity-check bits (or BCH paritybits) generated by BCH-encoding the information bits.

That is, it is assumed that the number of the information bits isK_(sig) and the number of bits when M_(outer) BCH parity-check bits bythe BCH encoding are added to the information bits, that is, the numberof BCH encoded bits including the information bits and the BCHparity-check bits is N_(outer)(=K_(sig)+M_(outer)). Here, M_(outer)=168.

The foregoing example describes that zero bits, which will be shortened,are padded, which is only one example. That is, since zero bits are bitshaving a value preset by the transmitter 100 and the receiver 200 andpadded only to form LDPC information bits along with information bitsincluding information to be substantially transmitted to the receiver200, bits having another value (for example, 1) preset by thetransmitter 100 and the receiver 200 instead of zero bits may be paddedfor shortening.

As described above, the information bits may be signaling. For example,the information bits may be signaling for broadcasting data transmittedby the transmitter 100.

The LDPC encoder 110 may systematically encode LDPC information bits togenerate LDPC parity bits, and output an LDPC codeword (or LDPC-encodedbits) formed of the LDPC information bits and the LDPC parity bits. Thatis, an LDPC code for the LDPC encoding is a systematic code, andtherefore, the LDPC codeword may be formed of the LDPC information bitsbefore being LDPC-encoded and the LDPC parity bits generated by the LDPCencoding.

For example, the LDPC encoder 110 may LDPC-encode K_(ldpc) LDPCinformation bits i=(i₀, i₁, . . . , i_(K) _(ldpc) ⁻¹) to generateN_(ldpc_parity) LDPC parity bits (p₀, p₁, . . . , p_(N) _(inner) _(−K)_(ldpc) ⁻¹) and output an LDPC codeword Λ=(c₀, c₁, . . . , c_(N)_(inner) ⁻¹)=(i₀, i₁, . . . , i_(K) _(ldpc) ⁻¹, p₀, p₁, . . . , p_(N)_(inner) _(−K) _(ldpc) ⁻¹) formed ofN_(inner)(=K_(ldpc)+N_(ldpc_parity)) bits.

In this case, the LDPC encoder 110 may perform the LDPC encoding on theinput bits (i.e., LDPC information bits) at various code rates togenerate an LDPC codeword having a specific length.

For example, the LDPC encoder 110 may perform LDPC encoding on 3240input bits at a code rate of 3/15 to generate an LDPC codeword formed of16200 bits. As another example, the LDPC encoder 110 may perform LDPCencoding on 6480 input bits at a code rate of 6/15 to generate an LDPCcodeword formed of 16200 bits.

A process of performing LDPC encoding is a process of generating an LDPCcodeword to satisfy H·C^(T)=0, and thus, the LDPC encoder 110 may use aparity check matrix to perform the LDPC encoding. Here, H represents theparity check matrix and C represents the LDPC codeword.

Hereinafter, a structure of the parity check matrix according to variousexemplary embodiments will be described with reference to theaccompanying drawings. In the parity check matrix, elements of a portionother than 1 are 0.

For example, the parity check matrix according to an exemplaryembodiment may have a structure as illustrated in FIG. 2.

Referring to FIG. 2, a parity check matrix 20 may be formed of fivesub-matrices A, B, C, Z and D. Hereinafter, for describing the structureof the parity check matrix 20, each matrix structure will be described.

The sub-matrix A is formed of K columns and g rows, and the sub-matrix Cis formed of K+g columns and N−K−g rows. Here, K (or K_(ldpc))represents a length of LDPC information bits and N (or N_(inner))represents a length of an LDPC codeword.

Further, in the sub-matrices A and C, indexes of a row in which 1 ispositioned in a 0-th column of an i-th column group may be defined basedon Table 1 when the length of the LDPC codeword is 16200 and the coderate is 3/15. The number of columns belonging to a same column group maybe 360.

TABLE 1 8 372 841 4522 5253 7430 8542 9822 10550 11896 11988 80 255 6671511 3549 5239 5422 5497 7157 7854 11267 257 406 792 2916 3072 3214 36384090 8175 8892 9003 80 150 346 1883 6838 7818 9482 10366 10514 1146812341 32 100 978 3493 6751 7787 8406 10170 10318 10451 12561 504 803 8562048 6775 7631 8110 8221 8371 9443 10990 152 283 696 1164 4514 4649 72607370 11925 11986 12092 127 1034 1044 1842 3184 3397 5931 7577 1169812339 12689 107 513 979 3934 4374 4558 7285 7809 8830 10804 10893 20452499 7197 8887 9420 9922 10132 10540 10816 11876 2932 6241 7136 78358541 9403 9817 11679 12377 12810 2211 2288 3937 4310 5952 6597 969210445 11064 11272

Hereinafter, positions (alternatively referred to as “indexes” or “indexvalues”) of a row in which 1 is positioned in the sub-matrices A and Cwill be described in detail with reference to, for example, Table 1.

When the length of an LDPC codeword is 16200 and the code rate is 3/15,coding parameters M₁, M₂, Q₁ and Q₂ based on the parity check matrix 200each are 1080, 11880, 3 and 33.

Here, Q₁ represents a size at which columns belonging to a same columngroup in the sub-matrix A are cyclic-shifted, and Q₂ represents a sizeat which columns belonging to a same column group in the sub-matrix Care cyclic-shifted.

Further, Q₁=M₁/L, Q₂=M₂/L, M₁=g, M₂=N−K−g and L represents an intervalat which patterns of a column are repeated in the sub-matrices A and C,respectively, that is, the number (for example, 360) of columnsbelonging to a same column group.

The indexes of the row in which 1 is positioned in the sub-matrices Aand C, respectively, may be determined based on an M₁ value.

For example, in above Table 1, since M₁=1080, the position of a row inwhich 1 is positioned in a 0-th column of an i-th column group in thesub-matrix A may be determined based on values less than 1080 amongindex values of above Table 1, and the position of a row in which 1 ispositioned in a 0-th column of an i-th column group in the sub-matrix Cmay be determined based on values equal to or greater than 1080 amongthe index values of above Table 1.

In detail, a sequence corresponding to a 0-th column group in aboveTable 1 is “8 372 841 4522 5253 7430 8542 9822 10550 11896 11988”.Therefore, in a 0-th column of a 0-th column group in the sub-matrix A,1 may be positioned in an eighth row, a 372-th row, and an 841-th row,respectively, and in a 0-th column of a 0-th column group in thesub-matrix C, 1 may be positioned in a 4522-th row, a 5253-th row, a7430-th row, an 8542-th row, a 9822-th row, a 10550-th row, a 11896-throw, and a 11988-row, respectively.

In the sub-matrix A, when the position of 1 is defined in a 0-th columnsof each column group, it may be cyclic-shifted by Q₁ to define aposition of a row in which 1 is positioned in other columns of eachcolumn group, and in the sub-matrix C, when the position of 1 is definedin a 0-th columns of each column group, it may be cyclic-shifted by Q₂to define a position of a row in which 1 is positioned in other columnsof each column group.

In the foregoing example, in the 0-th column of the 0-th column group inthe sub-matrix A, 1 is positioned in an eighth row, a 372-th row, and an841-th row. In this case, since Q₁=3, indexes of a row in which 1 ispositioned in a first column of the 0-th column group may be 11(=8+3),375(=372+3), and 844(=841+3) and indexes of a row in which 1 ispositioned in a second column of the 0-th column group may be 14(=11+3),378(=375+3), and 847(=844+3).

In a 0-th column of a 0-th column group in the sub-matrix C, 1 ispositioned in a 4522-th row, a 5253-th row, a 7430-th row, an 8542-throw, a 9822-th row, a 10550-th row, a 11896-th row, and a 11988-th row.In this case, since Q₂=33, the indexes of the row in which 1 ispositioned in a first column of the 0-th column group may be4555(=4522+33), 5286(=5253+33), 7463(=7430+33), 8575(=8542+33),9855(=9822+33) 10583(=10550+33), 11929(=11896+33), and 12021(=11988+33)and the indexes of the row in which 1 is positioned in a second columnof the 0-th column group may be 4588(=4555+33), 5319(=5286+33),7496(=7463+33), 8608(=8575+33), 9888(=9855+33), 10616(=10583+33),11962(=11929+33), and 12054(=12021+33).

According to the scheme, the positions of the row in which 1 ispositioned in all the column groups in the sub-matrices A and C may bedefined.

The sub-matrix B is a dual diagonal matrix, the sub-matrix D is anidentity matrix, and the sub-matrix Z is a zero matrix.

As a result, the structure of the parity check matrix 20 as illustratedin FIG. 2 may be defined by the sub-matrices A, B, C, D and Z having theabove structure.

Hereinafter, a method for performing, by the LDPC encoder 110, LDPCencoding based on the parity check matrix 20 as illustrated in FIG. 2will be described.

An LDPC code may be used to encode an information block S=(s₀, s₁, . . ., s_(K−1)). In this case, to generate an LDPC codeword Λ=(λ₀, λ₁, . . ., λ_(N−1)) having a length of N=K+M₁+M₂, parity blocks P=(p₀, p₁, . . ., p_(M) ₁ _(+M) ₂ ⁻¹) from the information block S may be systematicallyencoded.

As a result, the LDPC codeword may be Λ=(s₀, s₁, . . . , s_(K−1), p₀,p₁, . . . , p_(M) ₁ _(+M) ₂ ⁻¹).

Here, M₁ and M₂ each represent a size of parity sub-matricescorresponding to the dual diagonal sub-matrix B and the identity matrixsub-D, respectively, in which M₁=g and M₂=N−K−g.

A process of calculating parity bits may be represented as follows.Hereinafter, for convenience of explanation, a case in which the paritycheck matrix 20 is defined as above Table 1 will be described as oneexample.

Step 1) λ_(i) is initialized to be s_(i) (i=0, 1, . . . , K−1) and p_(j)is initialized to be 0 (j=0, 1, . . . , M₁+M₂−1).

Step 2) A first information bit λ₀ is accumulated in a parity bitaddress defined in the first row of above Table 1.

Step 3) For the next L−1 information bits λ_(m) (m=1, 2, . . . , L−1),λ_(m) is accumulated in the parity bit address calculated based onfollowing Equation 1.

(x+m×Q)mod M ₁ (if χ<M ₁)

M ₁+{(χ−M ₁ +m×Q ₂)mod M ₂} (if χ≥M ₁)  (1)

In above Equation 1, x represents an address of a parity bit accumulatorcorresponding to a first information bit λ₀.

Further, Q₁=M₁/L and Q₂=M₂/L. In this case, since the length of the LDPCcodeword is 16200 and the code rate is 3/15, M₁=1080, M₂=11880, Q₁=3,Q₂=33, L=360.

Step 4) Since the parity bit address like the second row of above Table1 is given to an L-th information bit XL, similar to the foregoingscheme, the parity bit address for next L−1 information bits λ_(m)(m=L+1, L+2, . . . , 2L−1) is calculated by the scheme described in theabove step 3. In this case, x represents the address of the parity bitaccumulator corresponding to the information bit λ_(L) and may beobtained based on the second row of above Table 1.

Step 5) For L new information bits of each group, the new rows of aboveTable 1 are set as the address of the parity bit accumulator, and thus,the foregoing process is repeated.

Step 6) After the foregoing process is repeated from the codeword bit λ₀to λ_(K−1), a value for following Equation 2 is sequentially calculatedfrom i=1.

P _(i) =P _(i) ⊕P _(i−1)(i=1,2, . . . M ₁−1)  (2)

Step 7) The parity bits λ_(K) to λ_(K+M) ₁ ⁻¹ corresponding to the dualdiagonal sub-matrix B are calculated based on following Equation 3.

λ_(K+L×t+s) =p _(Q) ₁ _(×s+t)(0≤s≤L,0≤t<

₁)  (3)

Step 8) The address of the parity bit accumulator for the L new codewordbits λ_(K) to λ_(K+M) ₁ ⁻¹ of each group is calculated based on the newrow of above Table 1 and above Equation 1.

Step 9) After the codeword bits λ_(K) to λ_(K+M) ₁ ⁻¹ are applied, theparity bits λ_(K+M) ₁ to λ_(K+M) ₁ _(+M) ₂ ⁻¹ corresponding to thesub-matrix D are calculated based on following Equation 4.

λ_(K+M) ₁ _(+L×t+s) =p _(M) ₁ _(Q) ₂ _(×s+t)(0≤s≤L,0≤t<

₂)  (4)

As a result, the parity bits may be calculated by the above scheme.However, this is only one example and therefore the scheme forcalculating the parity bits based on the parity check matrix asillustrated in FIG. 2 may be variously defined.

As such, the LDPC encoder 110 may perform the LDPC encoding based onabove Table 1 to generate the LDPC codeword.

In detail, the LDPC encoder 110 may perform the LDPC encoding on 3240input bits, that is, the LDPC information bits at the code rate of 3/15based on above Table 1 to generate 12960 LDPC parity bits and output theLDPC parity bits and the LDPC codeword formed of the LDPC parity bits.In this case, the LDPC codeword may be formed of 16200 bits.

As another example, the parity check matrix according to an exemplaryembodiment may have a structure as illustrated in FIG. 3.

Referring to FIG. 3, a parity check matrix 30 is formed of aninformation sub-matrix 31 which is a sub-matrix corresponding to theinformation bits (that is, LDPC information bits) and a paritysub-matrix 32 which is a sub-matrix corresponding to the parity bits(that is, LDPC parity bits).

The information sub-matrix 31 includes K_(ldpc) columns and the paritysub-matrix 32 includes N_(ldpc_parity)=N_(inner)−K_(ldpc) columns. Thenumber of rows of the parity check matrix 30 is equal to the numberN_(ldpc_parity)=N_(inner)−K_(ldpc) of columns of the parity sub-matrix32.

Further, in the parity check matrix 30, N_(inner) represents the lengthof the LDPC codeword, K_(ldpc) represents the length of the informationbits, and N_(ldpc_parity)=N_(inner)−K_(ldpc) represents the length ofthe parity bits.

Hereinafter, the structures of the information sub-matrix 31 and theparity sub-matrix 32 will be described.

The information sub-matrix 31 is a matrix including the K_(ldpc) columns(that is, 0-th column to (K_(ldpc)−1)-th column) and depends on thefollowing rule.

First, the K_(ldpc) columns configuring the information sub-matrix 31belong to the same group by M numbers and are divided into a total ofK_(ldpc)/M column groups. The columns belonging to the same column grouphave a relationship that they are cyclic-shifted by Q_(ldpc) from oneanother. That is, Q_(ldpc) may be considered as a cyclic shift parametervalue for columns of the column group in the information sub-matrixconfiguring the parity check matrix 30.

Here, M represents an interval (for example, M=360) at which the patternof columns in the information sub-matrix 31 is repeated and Q_(ldpc) isa size at which each column in the information sub-matrix 31 iscyclic-shifted. M is a common divisor of N_(inner) and K_(ldpc), and isdetermined so that Q_(ldpc)=(N_(inner)−K_(ldpc))/M is established. Here,M and Q_(ldpc) are integers and K_(ldpc)/M also becomes an integer. Mand Q_(ldpc) may have various values depending on the length of the LDPCcodeword and the code rate.

For example, when M=360, the length N_(inner) of the LDPC codeword is16200, and the code rate is 6/15, Q_(ldpc) may be 27.

Second, if a degree (herein, the degree is the number of values ispositioned in a column and the degrees of all columns belonging to asame column group are the same) of a 0-th column of an i-th (i=0, 1, . .. , K_(ldpc)/M−1) column group is set to be D_(i) and positions (orindex) of each row in which 1 is positioned in the 0-th column of thei-th column group is set to be R_(i,0) ⁽⁰⁾, R_(i,0) ⁽¹⁾, . . . , R_(i,0)^((D,−1)), an index R_(i,j) ^((k)) of a row in which a k-th 1 ispositioned in a j-th column in the i-th column group is determined basedon following Equation 5.

R _(i,j) ^((k)) =R _(i,(j−1)) ^((k))+

_(ldpc) mod(N _(inner) −K _(ldpc))  (5)

In above Equation 5, k=0, 1, 2, . . . , D_(i)−1; i=0, 1, . . . ,K_(ldpc)/M−1; j=1, 2, . . . , M−1.

Above Equation 5 may be represented like following Equation 6.

R _(i,j) ^((k))=(R _(i,0) ^((k))+(j mod M)×

_(ldpc))mod(N _(inner) −K _(ldpc))  (5)

In above Equation 6, k=0, 1, 2, . . . , D_(i)−1; i=0, 1, . . . ,K_(ldpc)/M−1; j=1, 2, . . . , M−1. In above Equation 6, since j=1, 2, .. . , M−1, (j mod M) may be considered as j.

In these Equations, R_(i,j) ^((k)) represents the index of a row inwhich a k-th 1 is positioned in a j-th column in an i-th column group,N_(inner) represents the length of an LDPC codeword, K_(ldpc) representsthe length of information bits, D_(i) represents the degree of columnsbelonging to the i-th column group, M represents the number of columnsbelonging to one column group, and Q_(ldpc) represents the size at whicheach column is cyclic-shifted.

As a result, referring to the above equations, if R_(i,0) ^((k)) valueis known, the index R_(i,j) ^((k)) of the row in which the k-th 1 ispositioned in the j-th column in the i-th column group may be known.Therefore, when the index value of the row in which the k-th 1 ispositioned in a 0-th columns of each column group is stored, thepositions of the column and the row in which 1 is positioned in theparity check matrix 30 (that is, information sub-matrix 31 of the paritycheck matrix 30) having the structure of FIG. 3 may be checked.

According to the foregoing rules, all degrees of columns belonging tothe i-th column group are D_(i). Therefore, according to the foregoingrules, an LDPC code in which the information on the parity check matrixis stored may be briefly represented as follows.

For example, when N_(inner) is 30, K_(ldpc) is 15, and Q_(ldpc) is 3,positional information of the row in which 1 is positioned in 0-thcolumns of three column groups may be represented by sequences asfollowing Equation 7, which may be named ‘weight-1 position sequence’.

R _(1,0) ⁽¹⁾=1,R _(1,0) ⁽²⁾=2,R _(1,0) ⁽³⁾=8,R _(1,0) ⁽⁴⁾=10,

R _(2,0) ⁽¹⁾=0,R _(2,0) ⁽³⁾=9,R _(3,0) ⁽³⁾=13,

R _(3,0) ⁽¹⁾=0,R _(3,0) ⁽²⁾=14.  (7)

In above Equation 7, R_(i,j) ^((k)) represents the indexes of the row inwhich the k-th 1 is positioned in the j-th column of the i-th columngroup.

The weight-1 position sequences as above Equation 7 representing theindex of the row in which 1 is positioned in the 0-th columns of eachcolumn group may be more briefly represented as following Table 2.

TABLE 2 1 2 8 10 0 9 13 0 14

Above Table 2 represents positions of elements having a value 1 in theparity check matrix and the i-th weight-1 position sequence isrepresented by the indexes of the row in which 1 is positioned in the0-th column belonging to the i-th column group.

The information sub-matrix 31 of the parity check matrix according tothe exemplary embodiment described above may be defined based onfollowing Table 3.

Here, following Table 3 represents the indexes of the row in which 1 ispositioned in a 0-th column of an i-th column group in the informationsub-matrix 31. That is, the information sub-matrix 31 is formed of aplurality of column groups each including M columns and the positions ofis in the 0-th columns of each of the plurality of column groups may bedefined as following Table 3.

For example, when the length N_(inner) of the LDPC codeword is 16200,the code rate is 6/15, and the M is 360, the indexes of the row in which1 is positioned in the 0-th column of the i-th column group in theinformation sub-matrix 31 are as following Table 3.

TABLE 3 27 430 519 528 1597 1943 2513 2600 2640 3310 3415 426

 5044 51

0 5328 5483 5928 6209 6392 6416 6502 7019 7415 7625 8312 8485 8224 89949945 9667 27 174 188 631 1122 1427 1779 2217 2270 2601 2813 3196 35823895 3908 3948 4463 4955 5120 5809 5988 6478 6604 7096 7673 7735 77958925 9613 9670 27 370 617 852 910 1030 1326 1521 1606 21

8 2248 2909 3214 3413 3623 3742 3752 4317 4

94 5300 5687 6034 6

 6232 6491 6621 6800 7304 8542 8634 950 1753 7635 8540 933 1415 55868745 27 6567 8707 9216 2341 8692 9580 9615 262 1092 5839 6080 352 37504847 7725 4610 6580 9506 9597 2512 2974 4814 9348 14

 4021 5

60 7009 1796 2883 3533 8306 1249 5422 7057 3955 6968 9422 1498 2931

2 27 1090 6215 26 4232 6354

indicates data missing or illegible when filed

According to another exemplary embodiment, a parity check matrix inwhich an order of indexes in each sequence corresponding to each columngroup in above Table 3 is changed is considered as a same parity checkmatrix for an LDPC code as the above described parity check matrix isanother example of the inventive concept.

According to still another exemplary embodiment, a parity check matrixin which an array order of the sequences of the column groups in aboveTable 3 is changed is also considered as a same parity check matrix asthe above described parity check matrix in that they have a samealgebraic characteristics such as cyclic characteristics and degreedistributions on a graph of a code.

According to yet another exemplary embodiment, a parity check matrix inwhich a multiple of Q_(ldpc) is added to all indexes of a sequencecorresponding to column group in above Table 3 is also considered as asame parity check matrix as the above described parity check matrix inthat they have same cyclic characteristics and degree distributions onthe graph of the code. Here, it is to be noted that when a valueobtained by adding the multiple of Q_(ldpc) to a given sequence is equalto or more than N_(inner)−N_(ldpc), the value needs to be changed into avalue obtained by performing a modulo operation on theN_(inner)−K_(ldpc) and then applied.

If the position of the row in which 1 is positioned in the 0-th columnof the i-th column group in the information sub-matrix 31 as shown inabove Table 3 is defined, it may be cyclic-shifted by Q_(ldpc), andthus, the position of the row in which 1 is positioned in other columnsof each column group may be defined.

For example, as shown in above Table 3, since the sequence correspondingto the 0-th column of the 0-th column group of the informationsub-matrix 31 is “27 430 519 828 1897 1943 2513 2600 2640 3310 3415 42665044 5100 5328 5483 5928 6204 6392 6416 6602 7019 7415 7623 8112 84858724 8994 9445 9667”, in the 0-th column of the 0-th column group in theinformation sub-matrix 31, 1 is positioned in a 27-th row, a 430-th row,a 519-th-row, . . . .

In this case, since Q_(ldpc)=(N_(inner)−K_(ldpc))/M=(16200-6480)/360=27,the indexes of the row in which 1 is positioned in the first column ofthe 0-th column group may be 54(=27+27), 457(=430+27), 546(=519+27), . .. , 81(=54+27), 484(=457+27), 573(=546+27), . . . .

By the above scheme, the indexes of the row in which 1 is positioned inall the rows of each column group may be defined.

Hereinafter, the method for performing LDPC encoding based on the paritycheck matrix 30 as illustrated in FIG. 3 will be described.

First, information bits to be encoded are set to be i₀, i₁, . . . ,i_(K) _(ldpc) ⁻¹, and code bits output from the LDPC encoding are set tobe c₀, c₁, . . . , c_(N) _(inner) ⁻¹.

Further, since an LDPC code is systematic, for k (0≤k<_(K) _(ldpc) ⁻¹),c_(k) is set to be i_(k). The remaining code bits are set to bep_(k):=c_(k+k) _(ldpc) .

Hereinafter, a method for calculating parity bits p_(k) will bedescribed.

Hereinafter, q(i,j,0) represents a j-th entry of an i-th row in an indexlist as above Table 3, and q(i,j,l) is set to be q(i,j,l)=q(i, j,0)+Q_(ldpc)×l (mod N_(inner)−K_(ldpc)) for 0<i<360. All theaccumulations may be realized by additions in a Galois field (GF) (2).Further, in above Table 3, since the length of the LDPC codeword is16200 and the code rate is 6/15, the Q_(ldpc) is 27.

When the q(i,j,0) and the q(i,j,1) are defined as above, a process ofcalculating the parity bit is as follows.

Step 1) The parity bits are initialized to ‘0’. That is, p_(k)=0 for0≤k<N_(inner)−K_(ldpc).

Step 2) For all k values of 0≤k<K_(ldpc), i and l are set to bei:=└k/360┘ and l:=k (mod 360). Here, └x┘ is a maximum integer which isnot greater than x.

Next, for all i, i_(k) is accumulated in p_(q(i,j,l)). That is,p_(q(i,0,l))=p_(q(i,0,l))+i_(k),p_(q(i,1,l))=p_(q(i,1,l))+i_(k),p_(q(i,2,l))=p_(q(i,2,l))+i_(k),. . . , p_(q(i,w(i)−1,l))=p_(q(i,w(i)−1,l))+i_(k) are calculated.

Here, w(i) represents the number of the values (elements) of an i-th rowin the index list as above Table 3 and represents the number of is in acolumn corresponding to i_(k) in the parity check matrix. Further, inabove Table 3, q(i, j, 0) which is a j-th entry of an i-th row is anindex of a parity bit and represents the position of the row in which 1is positioned in a column corresponding to i_(k) in the parity checkmatrix.

In detail, in above Table 3, q(i,j,0) which is the j-th entry of thei-th row represents the position of the row in which 1 is positioned inthe first (that is, 0-th) column of the i-th column group in the paritycheck matrix of the LDPC code.

The q(i, j, 0) may also be considered as the index of the parity bit tobe generated by LDPC encoding according to a method for allowing a realapparatus to implement a scheme for accumulating i_(k) in p_(q)(i,j, 1)for all i, and may also be considered as an index in another form whenanother encoding method is implemented. However, this is only oneexample, and therefore, it is apparent to obtain an equivalent result toan LDPC encoding result which may be obtained from the parity checkmatrix of the LDPC code which may basically be generated based on theq(i,j,0) values of above Table 3 whatever the encoding scheme isapplied.

Step 3) A parity bit p_(k) is calculated by calculatingp_(k)=p_(k)+p_(k−1) for all k satisfying 0<k<N_(inner)−K_(ldpc).

Accordingly, all code bits c₀, c₁, . . . , c_(N) _(inner) ⁻¹ may beobtained.

As a result, parity bits may be calculated by the above scheme. However,this is only one example, and therefore, the scheme for calculating theparity bits based on the parity check matrix as illustrated in FIG. 3may be variously defined.

As such, the LDPC encoder 110 may perform LDPC encoding based on aboveTable 3 to generate an LDPC codeword.

In detail, the LDPC encoder 110 may perform the LDPC encoding on 6480input bits, that is, the LDPC information bits at the code rate of 6/15based on above Table 3 to generate 9720 LDPC parity bits and output theLDPC parity bits and the LDPC codeword formed of the LDPC parity bits.In this case, the LDPC codeword may be formed of 16200 bits.

As described above, the LDPC encoder 110 may encode the input bits atvarious code rates to generate the LDPC codeword, and output thegenerated LDPC codeword to the parity permutator 120.

The parity permutator 120 interleaves the LDPC parity bits, and performsgroup-wise interleaving on a plurality of bit groups configuring theinterleaved LDPC parity bits to perform parity permutation. However, theparity permutator 120 may not interleave the LDPC parity bits but mayperform the group-wise interleaving on the LDPC parity bits to performparity permutation.

The parity permutator 120 may output the parity permutated LDPC codewordto the puncturer 130.

To this end, the parity permutator 120 may include a parity interleaver(not illustrated) for interleaving the LDPC parity bits and a group-wiseinterleaver (not illustrated) for group-wise interleaving the LDPCparity bits or the interleaved LDPC parity bits.

First, the parity interleaver may interleave the LDPC parity bits. Thatis, the parity interleaver may interleave only the LDPC parity bitsamong the LDPC information bits and the LDPC parity bits configuring theLDPC codeword.

In detail, the parity interleaver may interleave the LDPC parity bitsbased on following Equation 8.

u _(i) =c _(i) for 0≤i<K _(ldpc) (information bits are not interleaved.)

u _(K) _(ldpc) _(+360t+s) =c _(K) _(ldpc) _(+27s+t) for 0≤s<360,0≤t<27  (8)

In detail, depending on above Equation 8, the LDPC codeword (c₀, c₁, . .. , c_(N) _(inner) ⁻¹) is parity-interleaved by the parity interleaverand an output of the parity interleaver may be represented by U=(u₀, u₁,. . . , u_(N) _(inner) ⁻¹).

By the parity interleaving, the LDPC codeword is configured such that aspecific number of continued bits in the LDPC codeword have similardecoding characteristics (for example, cyclic distribution, degree ofcolumn, etc.). For example, the LDPC codeword may have similar decodingcharacteristics by each continued M bits. Here, M may be 360.

The product of the LDPC codeword bits by the parity check matrix need tobe ‘0’. This means that a sum of the products of the i-th LDPC codewordbits c₁ (i=0, 1, . . . , N_(inner)−1) by the i-th columns of the paritycheck matrix needs to be a ‘0’ vector. Therefore, the i-th LDPC codewordbits may be considered as corresponding to the i-th column of the paritycheck matrix.

As to the parity check matrix 30 as illustrated in FIG. 3, elementsincluded in every M columns of the information sub-matrix 31 belongs toa same group and have the same characteristics in a column group unit(for example, columns of a same column group have the same degreedistributions and the same cyclic characteristics).

Continued M bits in the LDPC information bits correspond to a samecolumn group in the information sub-matrix 31, and, as a result, theLDPC information bits may be formed of the continued M bits having samecodeword characteristics. Meanwhile, if the parity bits of the LDPCcodeword are interleaved based on above Equation 8, continued M bits ofthe interleaved parity bits may have the same codeword characteristics.

As a result, by the parity interleaving, the LDPC codeword is configuredsuch that a specific number of continued bits have similar decodingcharacteristics.

However, when LDPC encoding is performed based on the parity checkmatrix 20 as illustrated in FIG. 2, parity interleaving is performed asa part of the LDPC encoding. Therefore, an LDPC codeword generated basedon the parity check matrix 20 as illustrated in FIG. 2 is not separatelyparity-interleaved. That is, the parity interleaver for the parityinterleaving is not used.

For example, in an L1 detail mode 2 in Table 6 to be described later,LDPC information bits are encoded based on the parity check matrix 20 asillustrated in FIG. 2, and thus, separate parity interleaving is notperformed. Here, even when the parity interleaving is not performed, theLDPC codeword bits may be formed of continued M bits having the samecharacteristics.

In this case, an output U=(u₀, u₁, . . . , u_(N) _(inner) ⁻¹) of theparity interleaver may be represented based on following Equation 9.

u _(i) =c _(i) for 0≤i<N _(inner)  (9)

As such, the LDPC codeword may simply pass through the parityinterleaver without parity interleaving. However, this is only oneexample, and in some cases, the LDPC codeword does not pass through theparity interleaver, and instead, may be directly provided to thegroup-wise interleaver to be described below.

Meanwhile, the group-wise interleaver may perform the group-wiseinterleaving on the output of the parity interleaver.

Here, as described above, the output of the parity interleaver may bethe LDPC codeword parity-interleaved by the parity interleaver or may bethe LDPC codeword which is not parity-interleaved by the parityinterleaver.

Therefore, when the parity interleaving is performed, the group-wiseinterleaver may perform the group-wise interleaving on the parityinterleaved LDPC codeword, and when the parity interleaving is notperformed, the group-wise interleaver may perform the group-wiseinterleaving on the LDPC codeword.

In detail, the group-wise interleaver may interleave the output of theparity interleaver in a bit group unit (or in a unit of a bit group).

For this purpose, the group-wise interleaver may divide the LDPCcodeword output from the parity interleaver into a plurality of bitgroups. As a result, the LDPC parity bits configuring the LDPC codewordmay be divided into a plurality of bit groups.

In detail, the group-wise interleaver may divide the LDPC codeword (u₀,u₁, . . . , u_(N) _(inner) ⁻¹) output from the parity interleaver basedon following Equation 10 into N_(group)(=N_(inner)/360) bit groups.

X _(j) ={u _(k)|360×j≤k<360×(j+1),0≤k<N _(inner)} for 0≤j<N_(group)  (10)

In above Equation 10, X_(j) represents a j-th bit group.

FIG. 4 illustrates an example in which the LDPC codeword output from theparity interleaver is divided into a plurality of bit groups, accordingto an exemplary embodiment.

Referring to FIG. 4, the LDPC codeword is divided intoN_(group)(=N_(inner)/360) bit groups and each bit group X_(j) for0≤j<N_(group) is formed of 360 bits.

As a result, the LDPC information bits formed of K_(ldpc) bits may bedivided into K_(ldpc)/360 bit groups and the LDPC parity bits formed ofN_(inner)−K_(ldpc) bits may be divided into N_(inner)−K_(ldpc)/360 bitgroups.

Further, the group-wise interleaver performs the group-wise interleavingon the LDPC codeword output from the parity interleaver.

In this case, the group-wise interleaver does not perform theinterleaving on the LDPC information bits, and may perform theinterleaving only on the LDPC parity bits among the LDPC informationbits and the LDPC parity bits to change the order of the plurality ofbit groups configuring the LDPC parity bits.

In detail, the group-wise interleaver may perform the group-wiseinterleaving on the LDPC codeword based on following Equation 11. Indetail, the group-wise interleaver may perform the group-wiseinterleaving on the plurality of bit groups configuring the LDPC paritybits based on following Equation 11.

Y _(j) =X _(j), 0≤j<K _(ldpc)/360

Y _(j) =X _(πp(j)) , K _(ldpc)/360≤j<N _(group)  (11)

In above Equation 11, Y_(j) represents a group-wise interleaved j-th bitgroup, and X_(j) represents a j-th bit group before the group-wiseinterleaving (that is, X_(j) represents the j-th bit group among theplurality of bit groups configuring the LDPC codeword, and Y_(j)represents the group-wise-interleaved j-th bit group). Further, π_(p)(j)represents a permutation order for the group-wise interleaving.

Further, K_(ldpc) is the number of input bits, that is, the number ofLDPC information bits, and N_(group) is the number of groups configuringthe LDPC codeword formed of the input bits and the LDPC parity bits.

The permutation order may be defined based on a group-wise interleavingpattern as shown in following Tables 4 and 5. That is, the group-wiseinterleaver determines π_(p)(j) based on the group-wise interleavingpattern as shown in following Tables 4 and 5, and as a result an orderof the plurality of bit groups configuring the LDPC parity bits may bechanged.

For example, the group-wise interleaving pattern may be as shown infollowing Table 4.

TABLE 4 Order of group-wise interleaving π_(p)(j) (18 ≤ j < 45)π_(p)(18) π_(p)(19) π_(p)(20) π_(p)(21) π_(p)(22) π_(p)(23) π_(p)(24)π_(p)(25) π_(p)(26) π_(p)(27) π_(p)(28) π_(p)(29) π_(p)(30) π_(p)(31)N_(group) π_(p)(32) π_(p)(33) π_(p)(34) π_(p)(35) π_(p)(36) π_(p)(37)π_(p)(38) π_(p)(39) π_(p)(40) π_(p)(41) π_(p)(42) π_(p)(43) π_(p)(44) 4519 37 33 26 40 43 22 29 24 35 44 31 27 20 21 39 — — — — — — — — — — —

Here, above Table 4 shows a group-wise interleaving pattern for a casein which LDPC encoding is performed on 6480 input bits, that is, theLDPC information bits, at a code rate of 6/15 to generate 9720 LDPCparity bits, and an LDPC codeword generated by the LDPC encoding ismodulated by 64-QAM and then is transmitted to the receiver 200.

That is, when 6480 LDPC information bits are encoded at the code rate of6/15, 9720 LDPC parity bits are generated, and, as a result, the LDPCcodeword may be formed of 16200 bits.

Each bit group is formed of 360 bits, and the LDPC codeword formed of16200 bits is divided into 45 bit groups.

Here, since the LDPC information bits are 6480 and the LDPC parity bitsare 9720, a 0-th bit group to a 17-th bit group correspond to the LDPCinformation bits and a 18-th bit group to a 44-th bit group correspondto the LDPC parity bits.

In this case, the parity interleaver performs parity interleaving, thegroup-wise interleaver does not perform interleaving on bit groupsconfiguring LDPC information bits, that is, the 0-th bit group to the17-th bit group but may interleave bit groups configuring theinterleaved LDPC parity bits, that is, the 18-th bit group to the 44-thbit group in a group unit to change an order of the 18-th bit group tothe 44-th bit group based on above Equation 11 and Table 4.

In detail, in above Table 4, above Equation 11 may be represented likeY₀=X₀, Y₁=X₁, . . . , Y₁₆=X₁₆, Y₁₇=X₁₇, Y₁₈=X_(πp(18))=X₁₉,Y₁₉=X_(πp(19))=X₃₇, Y₂₀=X_(πp(20))=X₃₃, . . . , Y₃₁=X_(πp(31))=X₂₀,Y₃₂=X_(πp(32))=X₂₁, Y₃₃=X_(πp(33))=X₃₉.

Therefore, the group-wise interleaver does not change an order of the0-th bit group to the 17-th bit group including the LDPC informationbits, but changes an order of the 18-th bit group to the 44-th bit groupincluding the LDPC parity bits.

In this case, the group-wise interleaver may change an order of 27 bitgroups such that specific bit groups among 27 bit groups configuring theLDPC parity bits are positioned at specific positions, and the remainingbit groups are randomly positioned at positions remaining after thespecific bit groups are positioned.

In detail, the group-wise interleaver positions a 19-th bit group at a18-th position, a 37-th bit group at a 19-th position, a 33-th bit groupat a 20-th position, . . . , a 20-th bit group at a 31-th position, a21-th bit group at a 32-th position, and a 39-th bit group at a 33-thposition.

Further, the group-wise interleaver randomly positions the remaining bitgroups, that is, the bit groups, which are positioned at 18-th, 23-th, .. . , 41-th and 42-th positions before the group-wise interleaving, atthe remaining positions. That is, the remaining bit groups are randomlypositioned at positions remaining after the bit groups each positionedat 19-th, 37-th, 33-th, . . . , 20-th, 21-th and 39-th positions beforethe group-wise interleaving are positioned by the group-wiseinterleaving. Here, the remaining positions may be 34-th to 44-thpositions.

As another example, the group-wise interleaving pattern may be as shownin following Table 5.

TABLE 5 Order of group-wise interleaving π_(p)(j) (18 ≤ j < 45)π_(p)(18) π_(p)(19) π_(p)(20) π_(p)(21) π_(p)(22) π_(p)(23) π_(p)(24)π_(p)(25) π_(p)(26) π_(p)(27) π_(p)(28) π_(p)(29) π_(p)(30) π_(p)(31)N_(group) π_(p)(32) π_(p)(33) π_(p)(34) π_(p)(35) π_(p)(36) π_(p)(37)π_(p)(38) π_(p)(39) π_(p)(40) π_(p)(41) π_(p)(42) π_(p)(43) π_(p)(44) 4519 37 33 26 40 43 22 29 24 35 44 31 27 20 21 39 25 42 34 18 32 38 23 3028 36 41

Above Table 5 represents a group-wise interleaving pattern for a case inwhich the LDPC encoder 110 performs LDPC encoding on 6480 input bits,that is, the LDPC information bits, at a code rate of 6/15 to generate9720 LDPC parity bits, and an LDPC codeword generated by the LDPCencoding is modulated by 64-QAM and then is transmitted to the receiver200.

That is, when 6480 LDPC information bits are encoded at the code rate of6/15, 9720 LDPC parity bits are generated, and, as a result, the LDPCcodeword may be formed of 16200 bits.

Each bit group is formed of 360 bits, and, as a result, the LDPCcodeword formed of 16200 bits is divided into 45 bit groups.

Here, since the LDPC information bits are 6480 and the LDPC parity bitsare 9720, a 0-th bit group to a 17-th bit group correspond to the LDPCinformation bits and a 18-th bit group to a 44-th bit group correspondto the LDPC parity bits.

In this case, the parity interleaver performs parity interleaving, thegroup-wise interleaver does not perform interleaving on bit groupsconfiguring the LDPC information bits, that is, the 0-th bit group tothe 17-th bit group, but may interleave bit groups configuring theinterleaved LDPC parity bits, that is, the 18-th bit group to the 44-thbit group in a group unit to change an order of the 18-th bit group tothe 44-th bit group based on above Equation 11 and Table 5.

In detail, in above Table 5, above Equation 11 may be represented likeY₀=X₀, Y₁=X₁, . . . , Y₁₆=X₁₆, Y₁₇=X₁₇, Y₁₈=X_(πp(18))=X₁₉,Y₁₉=X_(πp(19))=X₃₇, Y₂₀=X_(πp(20))=X₃₃, . . . , Y₄₂=X_(πp(42))=X₂₈,Y₄₃=X_(πp(43))=X₃₆, Y₄₄=X_(πp(44))=X₄₁.

Therefore, the group-wise interleaver does not change an order of the0-th bit group to the 17-th bit group including the LDPC informationbits, but changes an order of the 18-th bit group to the 44-th bit groupincluding the LDPC parity bits.

In detail, the group-wise interleaver may change the order of the bitgroup from the 18-th bit group to the 44-th bit group such that a 19-thbit group is positioned at a 18-th position, a 37-th bit group ispositioned at a 19-th position, a 33-th bit group is positioned at a20-th position, . . . , a 28-th bit group is positioned at a 42-thposition, a 36-th bit group is positioned at a 43-th position, a 41-thbit group is positioned at a 44-th position.

As such, the parity permutator 120 may interleave the parity bits andperform the group-wise interleaving on the plurality of bit groupsconfiguring the interleaved parity bits to perform parity permutation.

That is, the parity permutator 120 may perform the group-wiseinterleaving on the plurality of bit groups configuring the interleavedLDPC parity bits based on above Equation 11 and Table 4 or 5.

In detail, when the LDPC encoder 110 performs the LDPC encoding on 6480LDPC information bits at the code rate of 6/15 to generate 9720 LDPCparity bits, the parity permutator 120 divides the LDPC parity bits intothe plurality of bit groups and may perform the plurality of group-wiseinterleavings based on above Equation 11 and Table 4 or 5 to change theorder of the plurality of bit groups.

The parity permutated LDPC codeword bits may be punctured as describedbelow and modulated by 64-QAM, which may then be transmitted to thereceiver 200.

The puncturer 130 punctures some of the parity permutated LDPC paritybits.

Here, the puncturing means that some of the LDPC parity bits are nottransmitted to the receiver 200. In this case, the puncturer 130 mayremove the punctured LDPC parity bits or output only the remaining bitsother than the punctured LDPC parity bits in the LDPC codeword.

For this purpose, the puncturer 130 may calculate the number of LDPCparity bits to be punctured.

In detail, the puncturer 130 may calculate the number of LDPC paritybits to be punctured based on N_(punc_temp) which is calculated based onfollowing Equation 12.

N _(punc_temp) =└A×(K _(ldpc) −N _(outer))┘+B  (12)

In above Equation 12, N_(punc_temp) represents a temporary number ofLDPC parity bits to be punctured, and K_(ldpc) represents the number ofLDPC information bits. N_(outer) represents the number of outer-encodedbits. Here, when the outer encoding is performed by BCH encoding,N_(outer) represents the number of BCH encoded bits.

A represents a preset constant. According to an exemplary embodiment, aconstant A value is set at a ratio of the number of bits to be puncturedto the number of bits to be shortened, but may be variously setdepending on requirements of a system. B is a value which represents alength of bits to be punctured even when the shortening length is 0 andrepresents a minimum length that the punctured LDPC parity bits canhave. Here, A=3/4 and B=4284.

The A and B values serve to adjust a code rate at which information bitsare actually transmitted. That is, to prepare for a case in which thelength of the information bits is short or a case in which the length ofthe information bits is long, the A and B values serve to adjust theactually transmitted code rate to be reduced.

Further, the puncturer 130 calculates N_(FEC) based on followingEquation 13.

$\begin{matrix}{N_{FEC} = {\left\lceil \frac{N_{{FEC}\_ {temp}}}{\eta_{MOD}} \right\rceil \times \eta_{MOD}}} & (13)\end{matrix}$

In the above Equation 13, ┌x┐ represents a minimum integer which isequal to or greater than x.

Further, N_(FEC_temp)=N_(outer)+N_(ldpc_parity)−N_(punc_temp) andη_(MOD) is a modulation order. For example, when an LDPC codeword ismodulated by QPSK, 16-quadrature amplitude modulation (QAM), 64-QAM or256-QAM, η MOD may be 2, 4, 6 or 8, respectively.

Further, N_(FEC) is the number of bits configuring a punctured andshortened LDPC codeword (that is, LDPC codeword bits to remain afterpuncturing and shortening).

Next, the puncturer 130 calculates N_(punc) based on following Equation14.

N _(punc) =N _(punc_temp)−(N _(FEC) −N _(FEC_temp))  (14)

In above Equation 14, N_(punc) represents the number of LDPC parity bitsto be punctured.

Referring to the above process, the puncturer 130 calculates thetemporary number N_(punc_temp) of LDPC parity bits to be punctured, byadding the constant integer B to an integer obtained from a productresult of the number of padded zero bits, that is, the shortening length(=K_(ldpc)−N_(outer)) by the preset constant A value. The constant Avalue is set at a ratio of the number of punctured bits to the number ofshortened bits according to an exemplary embodiment, but may bevariously set depending on requirements of a system.

Further, the puncturer 130 calculates a temporary number N_(FEC_temp) ofLDPC codeword bits to constitute the LDPC codeword after puncturing andshortening based on N_(punc_temp).

In detail, the LDPC information bits are LDPC-encoded and the LDPCparity bits generated by the LDPC encoding are added to the LDPCinformation bits to configure the LDPC codeword. Here, the LDPCinformation bits include the BCH encoded bits in which the informationbits are BCH-encoded and, in some cases, may further include zero bitspadded to the information bits.

In this case, since the padded zero bits are LDPC-encoded but are nottransmitted to the receiver 200, the shortened LDPC codeword, that is,the LDPC codeword (that is, shortened LDPC codeword) without the paddedzero bits may be formed of the BCH encoded bits and the LDPC paritybits. When the zero bits are not padded, the LDPC codeword may also beformed of the BCH encoded bits and the LDPC parity bits.

Therefore, the puncturer 130 subtracts the temporary number of puncturedLDPC parity bits from the summed value of the number of BCH encoded bitsand the number of LDPC parity bits to calculate N_(FEC) temp.

The punctured and shortened LDPC codeword bits are modulated by 64-QAMto be mapped to constellation symbols and the constellation symbols maybe transmitted to the receiver 200 through a frame.

Therefore, the puncturer 130 determines the number N_(FEC) of LDPCcodeword bits to constitute the LDPC codeword after puncturing andshortening based on N_(FEC_temp), N_(FEC) being an integer multiple ofthe modulation order, and determines the number N_(punc) of bits whichneed to be punctured in the shortened LDPC codeword bits to formN_(FEC). Meanwhile, when zero bits are not padded, the LDPC codeword maybe formed of BCH encoded bits and LDPC parity bits and the shorteningmay be omitted.

The puncturer 130 may puncture bits as many as the number calculated inthe LDPC parity bits.

In detail, the puncturer 130 may puncture a specific number of bits at aback portion of the parity permutated LDPC parity bits. That is, thepuncturer 130 may puncture N_(punc) bits from a last LDPC parity bitamong the parity permutated LDPC parity bits.

As such, since the puncturer 130 performs puncturing from the last LDPCparity bit, a bit group of which the position is changed to the backportion in the LDPC parity bits by the parity permutation may start tobe punctured. That is, the first punctured bit group may be a bit groupinterleaved to a last position by the parity permutation.

The transmitter 100 may transmit an LDPC codeword to the receiver 200.

In detail, the transmitter 100 maps LDPC codeword bits except paddedzero bits in the LDPC codeword in which LDPC parity bits are punctured,that is, the punctured and shortened LDPC codeword bits to constellationsymbols by 64-QAM, and may map the symbols to a frame for transmissionto the receiver 200.

Therefore, the LDPC codeword in which the LDPC parity bits are puncturedmay be mapped to the constellation symbols by 64-QAM to be transmittedto the receiver 200. For example, some LDPC parity bits in 16200 LDPCcodeword bits generated by encoding 6480 input bits at a code rate of6/15 may be punctured and the LDPC codeword bits remaining after thepuncturing may be modulated by 64-QAM to be transmitted to the receiver200.

As described above, since the information bits are signaling includingsignaling information about data or service data, the transmitter 100may map the data to a frame along with the signaling for processing thedata, and transmit the mapped data to the receiver 200.

In detail, the transmitter 100 may process the data in a specific schemeto generate the constellation symbols and map the generatedconstellation symbols to data symbols of each frame. Further, thetransmitter 100 may map the signaling for data mapped to each data to apreamble of the frame. For example, the transmitter 100 may map thesignaling including the signaling information for the data mapped to ani-th frame to the i-th frame.

As a result, the receiver 200 may use the signaling acquired from theframe to acquire and process the data from the frame.

According to the exemplary embodiment, the group-wise interleaving isperformed based on above Equation 11 and above Tables 4 and 5 asdescribed above, and the reason for the group-wise interleavingdetermined like above Tables 4 and 5 is as follows.

In detail, since the B value of above Equation 12 represents the minimumlength of the LDPC parity bits to be punctured, the specific number ofbits may be always punctured depending on the B value.

For example, according to the exemplary embodiment, since B=4284 and abit group is formed of 360 bits, even when the shortening length is 0,at least

$\left\lfloor \frac{4284}{360} \right\rfloor = 11$

bit groups are always punctured.

In this case, since the puncturing is performed from the last LDPCparity bit, the specific number of bit groups from a last bit groupamong the plurality of bit groups configuring the group-wise interleavedLDPC parity bits may be always punctured regardless of the shorteninglength.

That is, in the foregoing example of Table 4, final 11 bit groups among27 bit groups configuring the group-wise interleaved LDPC parity bits,that is, the bit groups positioned at 34-th to 44-th positions may bealways punctured.

Therefore, since the bit groups determined to be always punctured arealways punctured, and then, are not transmitted in a current frame,these bit groups need to be positioned only where bits are alwayspunctured after group-wise interleaving. Therefore, it is not importantat which position of these bit groups are positioned after thegroup-wise interleaving.

When more bits are to be additionally punctured in addition to the LDPCparity bits to be always punctured in response to the number of LDPCparity bits to be punctured, which bit groups are to be additionallypunctured is determined depending on which bit groups are sequentiallypositioned next to the bit groups to be always punctured.

That is, in the foregoing example of Table 4, when the number of LDPCparity bits to be punctured is 7200, 20 bit groups need to be punctured,and thus, 9 bit groups need to be additionally punctured, in addition to11 bit groups to be always punctured. In this case, 9 bit groups to beadditionally punctured are 9 bit groups positioned next to the bitgroups to be always punctured based on the puncturing direction andcorrespond to bit groups positioned at 33-th, 32-th, 31-th, . . . ,26-th and 25-th positions after the group-wise interleaving.

As such, the LDPC parity bits to be additionally punctured may bedetermined depending on the remaining bit groups other than the bitgroups to be always punctured after the group-wise interleaving, thatis, the bit groups positioned at 18-th to 33-th positions.

In this case, according to various exemplary embodiments, the indexes ofbit groups before the group-wise interleaving which are positioned at a18-th bit group to a 33-th bit group after the group-wise interleavingare defined as shown in Tables 4 and 5. That is, they may beY₁₈=X_(πp(18))=X₁₉, Y₁₉=X_(πp(19))=X₃₇, Y₂₀=X_(πp(20))=X₃₃, . . . ,Y₃₁=X_(πp(31))=X₂₀, Y₃₂=X_(πp(32))=X₂₁, and Y₃₃=X_(πp(33))=X₃₉.

Therefore, according to various exemplary embodiments, it may beconsidered that the order of the LDPC parity bits punctured by thegroup-wise interleaving pattern as shown in above Tables 4 and 5 isdetermined.

The reason why the permutation order for the group-wise interleavingaccording to the present exemplary embodiment is defined like Tables 4and 5 will be described below.

In detail, a process of encoding, by the LDPC encoder 110, 6480 LDPCinformation bits at the code rate of 6/15 to generate 9720 LDPC paritybits and inducing the permutation order for the group-wise interleavingin the case in which an LDPC codeword generated by the LDPC encoding ismodulated by 64-QAM and then is transmitted to the receiver 200 is asfollows.

A parity check matrix (for example, FIG. 3) of an LDPC code having acode rate of 6/15 may be converted into a parity check matrix configuredof blocks having a size of 360×360 as illustrated in FIG. 5 byperforming a column permutation process and an appropriate rowpermutation process corresponding to the parity interleaving process.Here, the column permutation process and the row permutation process donot change algebraic characteristics of the LDPC code and therefore havebeen widely used to theoretically analyze the LDPC code.

In a first step for obtaining the permutation order, it is assumed thata length of control information (which is LDPC information bits input ofLDPC encoding of which the length is a summed value of the number ofinformation bits and the number of BCH parity-check bits generated byperforming BCH encoding on the information bits) is 360 bits. In thiscase, since 360 bits form one bit group, 360 bits correspond to one bitgroup, which means that the remaining 17 bit groups other than oneinformation bit group among a total of 18 information bit groups (thatis, 18 bit groups configuring the LPDC information bits) arezero-padded.

Here, one bit group which will not be zero-padded depending on apredefined zero padding order is selected (for example, 3-th bit group)and the remaining bit groups are zero-padded. This may be consideredthat column groups of a parity check matrix corresponding to zero-padded17 bit groups are removed in terms of the parity check matrix. Thereason is that since the zero-padded portions are bits already known tothe receiver 200, these portions are removed during an LDPC decodingprocess and may be decoded. This is referred to as shortening.

The parity portion of the LDPC code having the code rate of 6/15 isformed of parity bits all of which the degree is 2. In this case, it maybe understood that puncturing the parity bits of which the degree is 2merges two rows connected to element 1 which is present in columnscorresponding to these bits. This is because the parity node having thedegree of 2 transfers only a simple message if the parity node receivesno information from the channel. Meanwhile, upon the merging, for eachcolumn in a row newly made by merging two rows, when 1 is present inexisting two rows, the element is replaced by 0, and when 1 is presentonly in one of the two rows, the element is replaced by 1.

The number of parity bits to be punctured by the preset A value (forexample, 3/4) and the B value (for example, 4284) and the number ofparity bits which are not to be punctured may be calculated. As in theforegoing example, when the length of the control information is 360,the number of parity bits which are not to be punctured may becalculated as 846 bits. In this case, when 360 bits configure one bitgroup, 846 bits correspond to about 2.3 bit groups. That is, two paritybit groups of which all bits are not to be punctured and one parity bitgroup of which some bits are not to be punctured need to be selectedfrom a total of 27 parity bit groups.

That is, the 17 column blocks which are already identified are deletedfrom the information bit portion of the parity check matrix of the LDPCcode having a code rate of 6/15, and three parity bit groups which arenot to be punctured are selected to make a row degree of the matrixoutput at the time of merging row blocks connected to the remaining bitgroups except 3 parity bit groups maximally uniform. If the number ofcases selecting three parity bit groups to make the row degree of thematrix maximally uniform is plural, the cyclic characteristics and thealgebraic characteristics of the parity check matrix in which columndeletion and row merging are performed need to be additionallyconsidered. For example, cyclic characteristics such as an approximatecycle extrinsic message degree (ACE) value may be considered. The ACEvalue of a cycle having a length of 2n is defined as a sum of valuesobtained by subtracting 2 from a degree of n variable nodes connected tothe cycle. Since a cycle having a small ACE value and a short lengthadversely affects the LDPC code, the number of cycles of which thelength is less than or equal to 8 and the ACE value is less than 3 in amatrix left after the in a matrix remaining after column deletion, rowmerging and row deletion is checked and a case which has the smallestnumber of cycles is selected. If this case is present in plural, amongthem, the case in which the real FER performance is the most excellentis selected. In some cases, when too many number of selections aregenerated depending on the cyclic characteristics based on the ACEvalue, a theoretical prediction value for a minimum signal-to-noise(SNR) which enables error-free communication with respect to ensemblesof the LDPC code having a distribution of the same 1 after the columndeletion, the row merging and the row deletion for each case is derivedby a density evolution analysis and the FER performance is verified by acomputation experiment by appropriately adjusting the number ofselections based on the minimum SNR values theoretically predicted.Further, since there is a bit group of which only some of bits arepunctured, an order of three bit groups is also selected with referenceto the real FER performance. In this case, the indexes of the selectedthree parity bit groups become three bit groups positioned at abeginning portion in the permutation order of the group-wiseinterleaving. For example, a 19-th bit group, a 37-th bit group and a33-th bit group of Table 4 may be bit groups after the group-wiseinterleaving and are then positioned at the beginning portion of theparity portion.

In the next step, one of 17 column groups removed in the first stepamong the information bit portion of the parity check matrix isrecovered depending on the preset order. For example, the column groupscorresponding to a 4-th bit groups may be recovered. In this case, thenumber of parity bits which are not to be punctured is calculated as1116 bits, which corresponds to about 3.1 bit groups.

Therefore, one parity bit group other than three parity bit groupsdetermined to be not punctured in the previous step needs to beadditionally selected. When one parity bit group is selected, similar tothe previous step, a parity group which corresponds to the parity bitsto be punctured and makes a degree of each row in the shortened matrixcorresponding to the zero-padded bits maximally uniform is selected. Ifmultiple parity bit groups to make the row degree of the matrixmaximally uniform are present, the number of cycles in which a length isless than or equal to 8 and the ACE value is less than or equal to 3 ischecked in the matrix left after the column deletion and the rowmerging, and thus, a bit group which has the smallest number of cyclesmay be selected. If the multiple bit groups have the same cycliccharacteristics, a bit group which has the most FER performance isselected.

In the next step, one of 16 column groups removed in the previous stepamong the information bit portion of the parity check matrix isrecovered depending on the preset order. For example, the column groupcorresponding to a 11-th bit group may be recovered. In this case, thenumber of parity bits which is not to be punctured is calculated as 1386bits, which corresponds to about 3.9 bit groups. Therefore, all paritybits which are not to be punctured may be determined using the fourparity bit groups which are determined to be not punctured in theprevious step.

Similarly, the order of the parity bit groups which are not to bepunctured until all column groups corresponding to the information bitportion are recovered is determined. When all column groups arerecovered, the number of parity bits which are not to be punctured iscalculated as 5436 bits, which corresponds to about 15.1 bit groups.Even in this case, a parity bit group to be additionally selected may bedetermined using the same scheme as the foregoing scheme.

As a result, 16 indexes at a beginning portion in the permutation orderfor the group-wise interleaving by the foregoing step may be determined.

For example, the permutation order may start as π_(p)(18)=19,π_(p)(19)=37, π_(p)(20)=33, π_(p)(21)=26, π_(p)(22)=40, π_(p)(23)=43,π_(p)(24)=22, π_(p)(25)=29, π_(p)(26)=24, π_(p)(27)=35, π_(p)(28)=44,π_(p)(29)=31, π_(p)(30)=27, π_(p)(31)=20, π_(p)(32)=21, π_(p)(33)=39.Further, in 11 indexes at a back portion other than the 16 indexes atthe beginning portion, indexes which are not selected at the beginningportion among indexes (for example, numbers between 18 and 44)corresponding to the parity bit group may be randomly disposed.

As a result, when the group-wise interleaving is performed based onabove Table 4 or 5 defined by the foregoing method, the excellent LDPCdecoding performance at the receiver 200 may be achieved and the FERperformance may be improved.

The bit groups positioned at 18-th, 23-th, 25-th, . . . , 39-th, 41-thand 42-th positions before the group-wise interleaving in above Table 4are randomly group-wise interleaved at a 34-th position to a 44-thposition. However, these bit groups may also be group-wise interleavedat the specific position as shown in above Table 5, in consideration ofthe additional parity order. The detailed content thereof will bedescribed below.

According to an exemplary embodiment, the foregoing information bits maybe implemented by L1-detail signaling. Therefore, the transmitter 100may perform the parity permutation on the L1-detail signaling by usingthe foregoing method and transmit it to the receiver 200.

Here, the L1-detail signaling may be signaling defined in an AdvancedTelevision System Committee (ATSC) 3.0 standard.

In detail, a mode of processing the L1-detail signaling is divided intoseven (7). The transmitter 100 according to the exemplary embodiment maygenerate additional parity bits according to the foregoing method whenan L1-detail mode 5 of the seven modes processes the L1-detailsignaling.

The ATSC 3.0 standard defines L1-basic signaling besides the L1-detailsignaling. The transmitter 100 may process the L1-basic signaling andthe L1-detail signaling by using a specific scheme and transmit theprocessed L1-basic signaling and the L1-detail signaling to the receiver200. In this case, a mode of processing the L1-basic signaling may alsobe divided into seven.

A method for processing the L1-basic signaling and the L1-detailsignaling will be described below.

The transmitter 100 may map the L1-basic signaling and the L1-detailsignaling to a preamble of a frame and map data to data symbols of theframe for transmission to the receiver 200.

Referring to FIG. 6, the frame may be configured of three parts, thatis, a bootstrap part, a preamble part, and a data part.

The bootstrap part is used for initial synchronization and provides abasic parameter required for the receiver 200 to decode the L1signaling. Further, the bootstrap part may include information about amode of processing the L1-basic signaling at the transmitter 100, thatis, information about a mode the transmitter 100 uses to process theL1-basic signaling.

The preamble part includes the L1 signaling, and may be configured oftwo parts, that is, the L1-basic signaling and the L1-detail signaling.

Here, the L1-basic signaling may include information about the L1-detailsignaling, and the L1-detail signaling may include information aboutdata. Here, the data is broadcasting data for providing broadcastingservices and may be transmitted through at least one physical layerpipes (PLPs).

In detail, the L1-basic signaling includes information required for thereceiver 200 to process the L1-detail signaling. This informationincludes, for example, information about a mode of processing theL1-detail signaling at the transmitter 100, that is, information about amode the transmitter 100 uses to process the L1-detail signaling,information about a length of the L1-detail signaling, information aboutan additional parity mode, that is, information about a K value used forthe transmitter 100 to generate additional parity bits using anL1B_L1_Detail_additional_parity_mode (here, when theL1B_L1_Detail_additional_parity_mode is set as ‘00’, K=0 and theadditional parity bits are not used), and information about a length oftotal cells. Further, the L1-basic signaling may include basic signalinginformation about a system including the transmitter 100 such as a fastFourier transform (FFT) size, a guard interval, and a pilot pattern.

Further, the L1-detail signaling includes information required for thereceiver 200 to decode the PLPs, for example, start positions of cellsmapped to data symbols for each PLP, PLP identifier (ID), a size of thePLP, a modulation scheme, a code rate, etc.

Therefore, the receiver 200 may acquire frame synchronization, acquirethe L1-basic signaling and the L1-detail signaling from the preamble,and receive service data required by a user from data symbols using theL1-detail signaling.

The method for processing the L1-basic signaling and the L1-detailsignaling will be described below in more detail with reference to theaccompanying drawings.

FIGS. 7 and 8 are block diagrams for describing detailed configurationsof the transmitter 100, according to exemplary embodiments.

In detail, as illustrated in FIG. 7, to process the L1-basic signaling,the transmitter 100 may include a scrambler 211, a BCH encoder 212, azero padder 213, an LDPC encoder 214, a parity permutator 215, arepeater 216, a puncturer 217, a zero remover 219, a bit demultiplexer219, and a constellation mapper 221.

Further, as illustrated in FIG. 8, to process the L1-detail signaling,the transmitter 100 may include a segmenter 311, a scrambler 312, a BCHencoder 313, a zero padder 314, an LDPC encoder 315, a parity permutator316, a repeater 317, a puncturer 318, an additional parity generator319, a zero remover 321, bit demultiplexers 322 and 323, andconstellation mappers 324 and 325.

Here, the components illustrated in FIGS. 7 and 8 are components forperforming encoding and modulation on the L1-basic signaling and theL1-detail signaling, which is only one example. According to anotherexemplary embodiments, some of the components illustrated in FIGS. 7 and8 may be omitted or changed, and other components may also be added.Further, positions of some of the components may be changed. Forexample, the positions of the repeaters 216 and 317 may be disposedafter the puncturers 217 and 318, respectively.

The LDPC encoder 315, the repeater 317, the puncturer 318, and theadditional parity generator 319 illustrated in FIG. 8 may perform theoperations performed by the LDPC encoder 110, the repeater 120, thepuncturer 130, and the additional parity generator 140 illustrated inFIG. 1, respectively.

In describing FIGS. 7 and 8, for convenience, components for performingcommon functions will be described together.

The L1-basic signaling and the L1-detail signaling may be protected byconcatenation of a BCH outer code and an LDPC inner code. However, thisis only one example. Therefore, as outer encoding performed before innerencoding in the concatenated coding, another encoding such as CRCencoding in addition to the BCH encoding may be used. Further, theL1-basic signaling and the L1-detail signaling may be protected only bythe LDPC inner code without the outer code.

First, the L1-basic signaling and the L1-detail signaling may bescrambled. Further, the L1-basic signaling and the L1-detail signalingare BCH encoded, and thus, BCH parity check bits of the L1-basicsignaling and the L1-detail signaling generated from the BCH encodingmay be added to the L1-basic signaling and the L1-detail signaling,respectively. Further, the concatenated signaling and the BCH paritycheck bits may be additionally protected by a shortened and punctured16K LDPC code.

To provide various robustness levels appropriate for a wide signal tonoise ratio (SNR) range, a protection level of the L1-basic signalingand the L1-detail signaling may be divided into seven (7) modes. Thatis, the protection level of the L1-basic signaling and the L1-detailsignaling may be divided into the seven modes based on an LDPC code, amodulation order, shortening/puncturing parameters (that is, a ratio ofthe number of bits to be punctured to the number of bits to beshortened), and the number of bits to be basically punctured (that is,the number of bits to be basically punctured when the number of bits tobe shortened is 0). In each mode, at least one different combination ofthe LDPC code, the modulation order, the constellation, and theshortening/puncturing pattern may be used.

A mode for the transmitter 100 to processes the signaling may be set inadvance depending on a system. Therefore, the transmitter 100 maydetermine parameters (for example, modulation and code rate (ModCod) foreach mode, parameter for the BCH encoding, parameter for the zeropadding, shortening pattern, code rate/code length of the LDPC code,group-wise interleaving pattern, parameter for repetition, parameter forpuncturing, and modulation scheme, etc.) for processing the signalingdepending on the set mode, and may process the signaling based on thedetermined parameters and transmit the processed signaling to thereceiver 200. For this purpose, the transmitter 100 may pre-store theparameters for processing the signaling depending on the mode.

Modulation and code rate configurations (ModCod configurations) for theseven modes for processing the L1-basic signaling and the seven modesfor processing the L1-detail signaling are shown in following Table 6.The transmitter 100 may encode and modulate the signaling based on theModCod configurations defined in following Table 6 according to acorresponding mode. That is, the transmitter 100 may determine anencoding and modulation scheme for the signaling in each mode based onfollowing Table 6, and may encode and modulate the signaling accordingto the determined scheme. In this case, even when modulating the L1signaling by the same modulation scheme, the transmitter 100 may alsouse different constellations.

TABLE 6 Code Code Signaling FEC Type K_(sig) Length Rate ConstellationL1-Basic Mode 1 200 16200 3/15 QPSK Mode 2 (Type A) QPSK Mode 3 QPSKMode 4 NUC_16-QAM Mode 5 NUC_64-QAM Mode 6 NUC_256-QAM Mode 7NUC_256-QAM L1-Detail Mode 1 400~2352 QPSK Mode 2 400~3072 QPSK Mode 3400~6312 6/15 QPSK Mode 4 (Type B) NUC_16-QAM Mode 5 NUC_64-QAM Mode 6NUC_256-QAM Mode 7 NUC_256-QAM

In above Table 6, K_(sig) represents the number of information bits fora coded block. That is, since the L1 signaling bits having a length ofK_(sig) are encoded to generate the coded block, a length of the L1signaling in one coded block becomes K_(sig). Therefore, the L1signaling bits having the size of K_(sig) may be considered ascorresponding to one LDPC coded block.

Referring to above Table 6, the K_(sig) value for the L1-basic signalingis fixed to 200. However, since the amount of L1-detail signaling bitsvaries, the K_(sig) value for the L1-detail signaling varies.

In detail, in a case of the L1-signaling, the number of L1-detailsignaling bits varies, and thus, when the number of L1-detail signalingbits is greater than a preset value, coded block, a length of theL-detail signaling may be segmented to have a length which is equal toor less than the preset value.

In this case, each size of the segmented L1-detail signaling blocks(that is, segment of the L1-detail signaling) may have the K_(sig) valuedefined in above Table 6. Further, each of the segmented L1-detailsignaling blocks having the size of K_(sig) may correspond to one LDPCcoded block.

However, when the number of L1-detail signaling bits is equal to or lessthan the preset value, the L1-detail signaling is not segmented. In thiscase, the size of the L1-detail signaling may have the K_(sig) valuedefined in above Table 6. Further, the L1-detail signaling having thesize of K_(sig) may correspond to one LDPC coded block.

Hereinafter, a method for segmenting L1-detail signaling will bedescribed in detail.

The segmenter 311 segments the L1-detail signaling. In detail, since thelength of the L1-detail signaling varies, when the length of theL1-detail signaling is greater than the preset value, the segmenter 311may segment the L1-detail signaling to have the number of bits which areequal to or less than the preset value and output each of the segmentedL1-detail signalings to the scrambler 312.

However, when the length of the L1-detail signaling is equal to or lessthan the preset value, the segmenter 311 does not perform a separatesegmentation operation.

A method for segmenting, by the segmenter 311, the L1-detail signalingis as follows.

The amount of L1-detail signaling bits varies and mainly depends on thenumber of PLPs. Therefore, to transmit all bits of the L1-detailsignaling, at least one forward error correction (FEC) frame isrequired. Here, an FEC frame may represent a form in which the L1-detailsignaling is encoded, and thus, parity bits according to the encodingare added to the L1-detail signaling.

In detail, when the L1-detail signaling is not segmented, the L1-detailsignaling is BCH-encoded and LDPC encoded to generate one FEC frame, andtherefore, one FEC frame is required for the L1-detail signalingtransmission. However, when the L1-detail signaling is segmented into atleast two, these segmented L1-detail signalings each are BCH-encoded andLDPC-encoded to generate at least two FEC frames, and therefore, atleast two FEC frames are required for the L1-detail signalingtransmission.

Therefore, the segmenter 311 may calculate the number N_(L1D_FECFRAME)of FEC frames for the L1-detail signaling based on following Equation15. That is, the number N_(L1D_FECFRAME) of FEC frames for the L1-detailsignaling may be determined based on following Equation 15.

$\begin{matrix}{N_{L1D\_ {FECFRAME}} = \left\lceil \frac{L_{L\; 1{D\_ {ex}}{\_ {pad}}}}{K_{seg}} \right\rceil} & (15)\end{matrix}$

In above Equation 15, ┌x┐ represents a minimum integer which is equal toor greater than x.

Further, in above Equation 15, K_(L1D_ex_pad) represents the length ofthe L1-detail signaling except L1 padding bits as illustrated in FIG. 9,and may be determined by a value of an L1B_L1_Detail_size bits fieldincluded in the L1-basic signaling.

Further, K_(seg) represents a threshold number for segmentation definedbased on the number K_(ldpc) of information bits input to the LDPCencoder 315, that is, the LDPC information bits. Further, K_(seg) may bedefined based on the number of BCH parity check bits of BCH encoding anda multiple value of 360.

K_(seg) is determined such that, after the L1-detail signaling issegmented, the number K_(sig) of information bits in the coded block isset to be equal to or less than K_(ldpc)−M_(outer). In detail, when theL1-detail signaling is segmented based on K_(seg), since the length ofsegmented L1-detail signaling does not exceed K_(seg), the length of thesegmented L1-detail signaling is set to be equal to or less thanK_(ldpc)−M_(outer) when K_(seg) is set like in Table 7 as following.

Here, M_(outer) and K_(ldpc) are as following Tables 8 and 9. Forsufficient robustness, the K_(seg) value for the L1-detail signalingmode 1 may be set to be K_(ldpc)−M_(outer)−720.

K_(seg) for each mode of the L1-detail signaling may be defined asfollowing Table 7. In this case, the segmenter 311 may determine K_(seg)according to a corresponding mode as shown in following Table 7.

TABLE 7 L1-Detail K_(seg) Mode 1 2352 Mode 2 3072 Mode 3 6312 Mode 4Mode 5 Mode 6 Mode 7

As illustrated in FIG. 9, an entire L1-detail signaling may be formed ofL1-detail signaling and L1 padding bits.

In this case, the segmenter 311 may calculate a length of an L1_PADDINGfield for the L1-detail signaling, that is, the number _(L1D_PAD) of theL1 padding bits based on following Equation 16.

However, calculating K_(L1D_PAD) based on following Equation 16 is onlyone example. That is, the segmenter 311 may calculate the length of theL1_PADDING field for the L1-detail signaling, that is, the numberK_(L1D_PAD) of the L1 padding bits based on K_(L1D_ex_pad) andN_(L1D_FECFRAME) values. As one example, the K_(L1D_PAD) value may beobtained based on following Equation 16. That is, following Equation 16is only one example of a method for obtaining a K_(L1D_PAD) value, andthus, another method based on the K_(L1D_ex_pad) and N_(L1D_FECFRAME)values may be applied to obtain an equivalent result.

$\begin{matrix}{K_{L1{D\_ PAD}} = {{\left\lceil \frac{K_{L\; 1{D\_ {ex}}{\_ {pad}}}}{\left( {N_{L1D\_ {FECFRAME}} \times 8} \right)} \right\rceil \times 8 \times N_{L1D\_ {FECFRAME}}} - K_{L1{D\_ pad}}}} & (16)\end{matrix}$

Further, the segmenter 311 may fill the L1_PADDING field withK_(L1D_PAD) zero bits (that is, bits having a 0 value). Therefore, asillustrated in FIG. 11, the K_(L1D_PAD) zero bits may be filled in theL1_PADDING field.

As such, by calculating the length of the L1_PADDING field and paddingzero bits of the calculated length to the L1_PADDING field, theL1-detail signaling may be segmented into the plurality of blocks formedof the same number of bits when the L1-detail signaling is segmented.

Next, the segmenter 311 may calculate a final length K_(L1D) of theentire L1-detail signaling including the zero padding bits based onfollowing Equation 17.

K _(L1D) =K _(L1D_ex_pad) +K _(L1D_PAD)  (17)

Further, the segmenter 311 may calculate the number K_(sig) ofinformation bits in each of the N_(L1D_FECFRAME) blocks based onfollowing Equation 18.

$\begin{matrix}{K_{sig} = \frac{K_{L\; 1D}}{N_{L1D\_ {FECFRAME}}}} & (18)\end{matrix}$

Next, the segmenter 311 may segment the L1-detail signaling by K_(sig)number of bits.

In detail, as illustrated in FIG. 9, when N_(L1D_FECFRAME) is greaterthan 1, the segmenter 311 may segment the L1-detail signaling by thenumber of K_(sig) bits to segment the L1-detail signaling into theN_(L1D_FECFRAME) blocks.

Therefore, the L1-detail signaling may be segmented intoN_(L1D_FECFRAME) blocks, and the number of L1-detail signaling bits ineach of the N_(L1D_FECFRAME) blocks may be K_(sig). Further, eachsegmented L1-detail signaling is encoded. As an encoded result, a codedblock, that is, an FEC frame is formed, such that the number ofL1-detail signaling bits in each of the N_(L1D_FECFRAME) coded blocksmay be K_(sig).

However, when the L1-detail signaling is not segmented,K_(sig)=K_(L1D_ex_pad).

The segmented L1-detail signaling blocks may be encoded by a followingprocedure.

In detail, all bits of each of the L1-detail signaling blocks having thesize K_(sig) may be scrambled. Next, each of the scrambled L1-detailsignaling blocks may be encoded by concatenation of the BCH outer codeand the LDPC inner code.

In detail, each of the L1-detail signaling blocks is BCH-encoded, andthus M_(outer) (=168) BCH parity check bits may be added to the K_(sig)L1-detail signaling bits of each block, and then, the concatenation ofthe L1-detail signaling bits and the BCH parity check bits of each blockmay be encoded by a shortened and punctured 16K LDPC code. The detailsof the BCH code and the LDPC code will be described below. However, theexemplary embodiments describe only a case in which M_(outer)=168, butit is apparent that M_(outer) may be changed into an appropriate valuedepending on the requirements of a system.

The scramblers 211 and 312 scramble the L1-basic signaling and theL1-detail signaling, respectively. In detail, the scramblers 211 and 312may randomize the L1-basic signaling and the L1-detail signaling, andoutput the randomized L1-basic signaling and L1-detail signaling to theBCH encoders 212 and 313, respectively.

In this case, the scramblers 211 and 312 may scramble the informationbits by a unit of K_(sig).

That is, since the number of L1-basic signaling bits transmitted to thereceiver 200 through each frame is 200, the scrambler 211 may scramblethe L1-basic signaling bits by K_(sig) (=200).

Since the number of L1-basic signaling bits transmitted to the receiver200 through each frame varies, in some cases, the L1-detail signalingmay be segmented by the segmenter 311. Further, the segmenter 311 mayoutput the L1-detail signaling formed of K_(sig) bits or the segmentedL1-detail signaling blocks to the scrambler 312. As a result, thescrambler 312 may scramble the L1-detail signaling bits by every K_(sig)which are output from the segmenter 311.

The BCH encoders 212 and 313 perform the BCH encoding on the L1-basicsignaling and the L1-detail signaling to generate the BCH parity checkbits.

In detail, the BCH encoders 212 and 313 may perform the BCH encoding onthe L1-basic signaling and the L1-detail signaling output from thescramblers 211 and 313, respectively, to generate the BCH parity checkbits, and output the BCH-encoded bits in which the BCH parity check bitsare added to each of the L1-basic signaling and the L1-detail signalingto the zero padders 213 and 314, respectively.

For example, the BCH encoders 212 and 313 may perform the BCH encodingon the input K_(sig) bits to generate the M_(outer) (that is,K_(sig)=K_(payload)) BCH parity check bits and output the BCH-encodedbits formed of N_(outer)(=K_(sig)+M_(outer)) bits to the zero padders213 and 314, respectively.

The parameters for the BCH encoding may be defined as following Table 8.

TABLE 8 K_(sig) = N_(outer) = Signaling FEC Type K_(payload) M_(outer)K_(sig) + M_(outer) L1-Basic Mode 1 200 168 368 Mode 2 Mode 3 Mode 4Mode 5 Mode 6 Mode 7 L1-Detail Mode 1 400~2352 568~2520 Mode 2 400~3072568~3240 Mode 3 400~6312 568~6480 Mode 4 Mode 5 Mode 6 Mode 7

Referring to FIGS. 7 and 8, it may be appreciated that the LDPC encoders214 and 315 may be disposed after the BCH encoders 212 and 313,respectively.

Therefore, the L1-basic signaling and the L1-detail signaling may beprotected by the concatenation of the BCH outer code and the LDPC innercode.

In detail, the L1-basic signaling and the L1-detail signaling areBCH-encoded, and thus, the BCH parity check bits for the L1-basicsignaling are added to the L1-basic signaling and the BCH parity checkbits for the L1-detail signaling are added to the L1-detail signaling.Further, the concatenated L1-basic signaling and BCH parity check bitsare additionally protected by an LDPC code, and the concatenatedL1-detail signaling and BCH parity check bits may be additionallyprotected by an LDPC code.

Here, it is assumed that an LDPC code for LDPC encoding is a 16K LDPCcode, and thus, in the BCH encoders 212 and 213, a systematic BCH codefor N_(inner)=16200 (that is, the code length of the 16K LDPC code is16200 and an LDPC codeword generated by the LDPC encoding may be formedof 16200 bits) may be used to perform outer encoding of the L1-basicsignaling and the L1-detail signaling.

The zero padders 213 and 314 pad zero bits. In detail, for the LDPCcode, a predetermined number of LDPC information bits defined accordingto a code rate and a code length is required, and thus, the zero padders213 and 314 may pad zero bits for the LDPC encoding to generate thepredetermined number of LDPC information bits formed of the BCH-encodedbits and zero bits, and output the generated bits to the LDPC encoders214 and 315, respectively, when the number of BCH-encoded bits is lessthan the number of LDPC information bits. When the number of BCH-encodedbits is equal to the number of LDPC information bits, zero bits are notpadded.

Here, zero bits padded by the zero padders 213 and 314 are padded forthe LDPC encoding, and therefore, the padded zero bits padded are nottransmitted to the receiver 200 by a shortening operation.

For example, when the number of LDPC information bits of the 16K LDPCcode is K_(ldpc), in order to form K_(ldpc) LDPC information bits, zerobits are padded to some of the LDPC information bits.

In detail, when the number of BCH-encoded bits is N_(outer), the numberof LDPC information bits of the 16K LDPC code is K_(ldpc), andN_(outer)<K_(ldpc), the zero padders 213 and 314 may pad theK_(ldpc)−N_(outer) zero bits to some of the LDPC information bits, anduse the N_(outer) BCH-encoded bits as the remaining portion of the LDPCinformation bits to generate the LDPC information bits formed ofK_(ldpc) bits. However, when N_(outer)=K_(ldpc), zero bits are notpadded.

For this purpose, the zero padders 213 and 314 may divide the LDPCinformation bits into a plurality of bit groups.

For example, the zero padders 213 and 314 may divide the K_(ldpc) LDPCinformation bits (i₀, i₁, . . . , i_(K) _(ldpc) ⁻¹) intoN_(info_group)(=K_(ldpc)/360) bit groups based on following Equation 19or 20. That is, the zero padders 213 and 314 may divide the LDPCinformation bits into the plurality of bit groups so that the number ofbits included in each bit group is 360.

$\begin{matrix}{Z_{i} = {{\left\{ {{\left. i_{k} \middle| j \right. = \left\lfloor \frac{k}{360} \right\rfloor},{0 \leq k < K_{ldpc}}} \right\} {for}\mspace{14mu} 0} \leq j < N_{{info}\_ {group}}}} & (19) \\{Z_{j} = {{\left\{ i_{k} \middle| {{360 \times j} \leq k < {360 \times \left( {j + 1} \right)}} \right\} {for}\mspace{14mu} 0} \leq j < N_{{info}\_ {group}}}} & (20)\end{matrix}$

In above Equations 19 and 20, Z_(j) represents a j-th bit group.

The parameters N_(outer), K_(ldpc), and N_(info_group) for the zeropadding for the L1-basic signaling and the L1-detail signaling may bedefined as shown in following Table 9. In this case, the zero padders213 and 314 may determine parameters for the zero padding according to acorresponding mode as shown in following Table 9.

TABLE 9 Signaling FEC Type N_(outer) K_(ldpc) N_(info) _(—) _(group)L1-Basic (all modes) 368 3240 9 L1-Detail Mode 1 568~2520 L1-Datail Mode2 568~3240 L1-Detail Mode 3 568~6480 6480 18 L1-Detail Mode 4 L1-DetailMode 5 L1-Detail Mode 6 L1-Detail Mode 7

Further, for 0≤j<N_(info_group), each bit group Z_(j) as shown in FIG.10 may be formed of 360 bits.

In detail, FIG. 10 illustrates a data format after the L1-basicsignaling and the L1-detail signaling each are LDPC-encoded. In FIG. 10,an LDPC FEC added to the K_(ldpc) LDPC information bits represents theLDPC parity bits generated by the LDPC encoding.

Referring to FIG. 10, the K_(ldpc) LDPC information bits are dividedinto the N_(info_group) bits groups and each bit group may be formed of360 bits.

When the number N_(outer)(=K_(sig)+M_(outer)) of BCH-encoded bits forthe L1-basic signaling and the L1-detail signaling is less than theK_(ldpc), that is, N_(outer)(=K_(sig)+M_(outer))<K_(ldpc), for the LDPCencoding, the K_(ldpc) LDPC information bits may be filled with theN_(outer) BCH-encoded bits and the K_(ldpc)−N_(outer) zero-padded bits.In this case, the padded zero bits are not transmitted to the receiver200.

Hereinafter, a shortening procedure performed by the zero padders 213and 314 will be described in more detail.

The zero padders 213 and 314 may calculate the number of padded zerobits. That is, to fit the number of bits required for the LDPC encoding,the zero padders 213 and 314 may calculate the number of zero bits to bepadded.

In detail, the zero padders 213 and 314 may calculate a differencebetween the number of LDPC information bits and the number ofBCH-encoded bits as the number of padded zero bits. That is, for a givenN_(outer), the zero padders 213 and 314 may calculate the number ofpadded zero bits as K_(ldpc)−N_(outer).

Further, the zero padders 213 and 314 may calculate the number of bitgroups in which all the bits are padded. That is, the zero padders 213and 314 may calculate the number of bit groups in which all bits withinthe bit group are padded by zero bits.

In detail, the zero padders 213 and 314 may calculate the number N_(pad)of groups to which all bits are padded based on following Equation 21 or22.

$\begin{matrix}{N_{pad} = \left\lfloor \frac{K_{ldpc} - N_{outer}}{360} \right\rfloor} & (21) \\{N_{pad} = \left\lfloor \frac{\left( {K_{ldpc} - M_{outer}} \right) - K_{sig}}{360} \right\rfloor} & (22)\end{matrix}$

Next, the zero padders 213 and 314 may determine bit groups in whichzero bits are padded among a plurality of bit groups based on ashortening pattern, and may pad zero bits to all bits within some of thedetermined bit groups and some bits within the remaining bit groups.

In this case, the shortening pattern of the padded bit group may bedefined as shown in following Table 10 In this case, the zero padders213 and 314 may determine the shortening patterns according to acorresponding mode as shown in following Table 10.

TABLE 10 π_(s)(j) (0 ≤ j < N_(info)_group) Signaling π_(s)(0) π_(s)(1)π_(s)(2) π_(s)(3) π_(s)(4) π_(s)(5) π_(s)(6) π_(s)(7) π_(s)(8) FEC TypeN_(info)_group π_(s)(9) π_(s)(10) π_(s)(11) π_(s)(12) π_(s)(13)π_(s)(14) π_(s)(15) π_(s)(16) π_(s)(17) L1-Basic 9 4 1 5 2 8 6 0 7 3(for all modes) — — — — — — — — — L1-Detail Mode 1 7 8 5 4 1 2 6 3 0 — —— — — — — — — L1-Detail Mode 2 6 1 7 8 0 2 4 3 5 — — — — — — — — —L1-Detail Mode 3 18 0 12 15 13 2 5 7 9 8 6 16 10 14 1 17 11 4 3L1-Detail Mode 4 0 15 5 16 17 1 6 13 11 4 7 12 8 14 2 3 9 10 L1-DetailMode 5 2 4 5 17 9 7 1 6 15 8 10 14 16 0 11 13 12 3 L1-Detail Mode 6 0 155 16 17 1 6 13 11 4 7 12 8 14 2 3 9 10 L1-Detail Mode 7 15 7 8 11 5 1016 4 12 3 0 6 9 1 14 17 2 13

Here, π_(s)(j) is an index of a j-th padded bit group. That is, theπ_(s)(j) represents a shortening pattern order of the j-th bit group.Further, N_(info_group) is the number of bit groups configuring the LDPCinformation bits.

In detail, the zero padders 213 and 314 may determine Z_(r)S(o), Z_(π)_(s) ₍₁₎, . . . , Z_(π) _(s) _((N) _(pad) ⁻¹⁾ as bit groups in which allbits within the bit group are padded by zero bits based on theshortening pattern, and pad zero bits to all bits of the bit groups.That is, the zero padders 213 and 314 may pad zero bits to all bits of aπ_(s)(0)-th bit group, a π_(s)(1)-th bit group, . . . aπ_(s)(N_(pad)−1)-th bit group among the plurality of bit groups based onthe shortening pattern.

As such, when N_(pad) is not 0, the zero padders 213 and 314 maydetermine a list of the N_(pad) bit groups, that is, Z_(π) _(s) ₍₀₎,Z_(π) _(s) ₍₁₎, . . . , Z_(π) _(s) _((N) _(pad) ⁻¹⁾ based on above Table10, and pad zero bits to all bits within the determined bit group.

However, when the N_(pad) is 0, the foregoing procedure may be omitted.

Since the number of all the padded zero bits is K_(ldpc)−N_(outer) andthe number of zero bits padded to the N_(pad) bit groups is 360×N_(pad),the zero padders 213 and 314 may additionally pad zero bits toK_(ldpc)−N_(outer)−360×N_(pad) LDPC information bits.

In this case, the zero padders 213 and 314 may determine a bit group towhich zero bits are additionally padded based on the shortening pattern,and may additionally pad zero bits from a head portion of the determinedbit group.

In detail, the zero padders 213 and 314 may determine Z_(π) _(s) _((N)_(pad) ₎ as a bit group to which zero bits are additionally padded basedon the shortening pattern, and may additionally pad zero bits to theK_(ldpc)−N_(outer)−360×N_(pad) bits positioned at the head portion ofZ_(π) _(s) _((N) _(pad) ₎. Therefore, the K_(ldpc)−N_(outer)−360×N_(pad)zero bits may be padded from a first bit of the π_(s)(N_(pad))-th bitgroup.

As a result, for Z_(π) _(s) _((N) _(pad) ₎, zero bits may beadditionally padded to the K_(ldpc)−N_(bch)−360×N_(pad) bits positionedat the head portion of the Z_(π) _(s) _((N) _(pad) ₎.

The foregoing example describes that K_(ldpc)−N_(outer)−360×N_(pad) zerobits are padded from a first bit of the Z_(π) _(s) _((N) _(pad) ₎, whichis only one example. Therefore, the position at which zero bits arepadded in the Z_(π) _(s) _((N) _(pad) ₎ may be changed. For example, theK_(ldpc)−N_(outer)−360×N_(pad) zero bits may be padded to a middleportion or a last portion of the Z_(π) _(s) _((N) _(pad) ₎ or may alsobe padded at any position of the Z_(π) _(s) _((N) _(pad) ₎.

Next, the zero padders 213 and 314 may map the BCH-encoded bits to thepositions at which zero bits are not padded to configure the LDPCinformation bits.

Therefore, the N_(outer) BCH-encoded bits are sequentially mapped to thebit positions at which zero bits in the K_(ldpc) LDPC information bits(i₀, i₁, . . . , i_(K) _(ldpc) ⁻¹) are not padded, and thus, theK_(ldpc) LDPC information bits may be formed of the N_(outer)BCH-encoded bits and the K_(ldpc)−N_(outer) information bits.

The padded zero bits are not transmitted to the receiver 200. As such, aprocedure of padding the zero bits or a procedure of padding the zerobits and then not transmitting the padded zero bits to the receiver 200may be called shortening.

The LDPC encoders 214 and 315 perform LDPC encoding on the L1-basicsignaling and the L1-detail signaling, respectively.

In detail, the LDPC encoders 214 and 315 may perform LDPC encoding onthe LDPC information bits output from the zero padders 213 and 31 togenerate LDPC parity bits, and output an LDPC codeword including theLDPC information bits and the LDPC parity bits to the parity permutators215 and 316, respectively.

That is, K_(ldpc) bits output from the zero padder 213 may includeK_(sig) L1-basic signaling bits, M_(outer)(=N_(outer)−K_(sig)) BCHparity check bits, and K_(ldpc)−N_(outer) padded zero bits, which mayconfigure K_(ldpc) LDPC information bits i=(i₀, i₁, . . . , i_(K)_(ldpc) ⁻¹) for the LDPC encoder 214.

Further, the K_(ldpc) bits output from the zero padder 314 may includethe K_(sig) L1-detail signaling bits, the M_(outer)(=N_(outer)−K_(sig))BCH parity check bits, and the (K_(ldpc)−N_(outer)) padded zero bits,which may configure the K_(ldpc) LDPC information bits i=(i₀, i₁, . . ., i_(K) _(ldpc) ⁻¹) for the LDPC encoder 315.

In this case, the LDPC encoders 214 and 315 may systematically performthe LDPC encoding on the K_(ldpc) LDPC information bits to generate anLDPC codeword Λ=(c₀, c₁, . . . , c_(N) _(inner) ⁻¹)=(i₀, i₁, . . . ,i_(K) _(ldpc) ⁻¹, p₀, p₁, . . . , p_(N) _(inner) _(−K) _(ldpc) ⁻¹)formed of N_(inner) bits.

In the L1-basic modes and the L1-detail modes 1 and 2, the LDPC encoders214 and 315 may encode the L1-basic signaling and the L1-detailsignaling at a code rate of 3/15 to generate 16200 LDPC codeword bits.In this case, the LDPC encoders 214 and 315 may perform the LDPCencoding based on above Table 1.

Further, in the L1-detail modes 3, 4, 5 6, and 7, the LDPC encoder 315may encode the L1-detail signaling at a code rate of 6/15 to generatethe 16200 LDPC codeword bits. In this case, the LDPC encoder 315 mayperform the LDPC encoding based on above Table 3.

The code rate and the code length for the L1-basic signaling and theL1-detail signaling are as shown in above Table 6, and the number ofLDPC information bits are as shown in above Table 9.

The parity permutators 215 and 316 perform parity permutation. That is,the parity permutators 215 and 316 may perform permutation only on theLDPC parity bits among the LDPC information bits and the LDPC paritybits.

In detail, the parity permutators 215 and 316 may perform thepermutation only on the LDPC parity bits in the LDPC codewords outputfrom the LDPC encoders 214 and 315, and output the parity permutatedLDPC codewords to the repeaters 216 and 317, respectively. The paritypermutator 316 may output the parity permutated LDPC codeword to anadditional parity generator 319. In this case, the additional paritygenerator 319 may use the parity permutated LDPC codeword output fromthe parity permutator 316 to generate additional parity bits.

For this purpose, the parity permutators 215 and 316 may include aparity interleaver (not illustrated) and a group-wise interleaver (notillustrated).

First, the parity interleaver may interleave only the LDPC parity bitsamong the LDPC information bits and the LDPC parity bits configuring theLDPC codeword. However, the parity interleaver may perform the parityinterleaving only in the cases of the L1-detail modes 3, 4, 5, 6 and 7.That is, since the L1-basic modes and the L1-detail modes 1 and 2include the parity interleaving as a portion of the LDPC encodingprocess, in the L1-basic modes and the L1-detail modes 1 and 2, theparity interleaver may not perform the parity interleaving.

In the mode of performing the parity interleaving, the parityinterleaver may interleave the LDPC parity bits based on followingEquation 23.

u _(i) =c _(i) for 0≤i<K _(ldpc) (information bits are not interleaved.)

u _(K) _(ldpc) _(+360t+s) =c _(K) _(ldpc) _(+27s+t) for 0≤s<360,0≤t<27  (23)

In detail, based on above Equation 23, the LDPC codeword (c₀, c₁, . . ., c_(N) _(inner) ⁻¹) is parity-interleaved by the parity interleaver andan output of the parity interleaver may be represented by U=(u₀, u₁, . .. , u_(N) _(inner) ⁻¹).

Since the L1-basic modes and the L1-detail modes 1 and 2 do not use theparity interleaver, an output U=(u₀, u₁, . . . , u_(N) _(inner) ⁻¹) ofthe parity interleaver may be represented as following Equation 24.

u _(i) =c _(i) for 0≤i<N _(inner)  (24)

The group-wise interleaver may perform the group-wise interleaving onthe output of the parity interleaver.

Here, as described above, the output of the parity interleaver may be anLDPC codeword parity-interleaved by the parity interleaver or may be anLDPC codeword which is not parity-interleaved by the parity interleaver.

Therefore, when the parity interleaving is performed, the group-wiseinterleaver may perform the group-wise interleaving on the parityinterleaved LDPC codeword, and when the parity interleaving is notperformed, the group-wise interleaver may perform the group-wiseinterleaving on the LDPC codeword which is not parity-interleaved.

In detail, the group-wise interleaver may interleave the output of theparity interleaver in a bit group unit.

For this purpose, the group-wise interleaver may divide an LDPC codewordoutput from the parity interleaver into a plurality of bit groups. As aresult, the LDPC parity bits output from the parity interleaver may bedivided into a plurality of bit groups.

In detail, the group-wise interleaver may divide the LDPC-encoded bits(u₀, u₁, . . . u_(N) _(inner) ⁻¹) output from the parity interleaverinto N_(group)(=N_(inner)/360) bit groups based on following Equation25.

X _(j) ={u _(k)|360×j≤k<360×(j+1),0≤k<N _(inner)} for 0≤j<N_(group)  (25)

In above Equation 25, X_(j) represents a j-th bit group.

FIG. 11 illustrates an example of dividing the LDPC codeword output fromthe parity interleaver into a plurality of bit groups.

Referring to FIG. 11, the LDPC codeword is divided intoN_(group)(=N_(inner)/360) bit groups, and each bit group X_(j) for0≤j<N_(group) is formed of 360 bits.

As a result, the LDPC information bits formed of K_(ldpc) bits may bedivided into K_(ldpc)/360 bit groups and the LDPC parity bits formed ofN_(inner)−K_(ldpc) bits may be divided into N_(inner)−K_(ldpc)/360 bitgroups.

Further, the group-wise interleaver performs the group-wise interleavingon the LDPC codeword output from the parity interleaver.

In this case, the group-wise interleaver does not perform interleavingon the LDPC information bits, and may perform the interleaving only onthe LDPC parity bits to change the order of the plurality of bit groupsconfiguring the LDPC parity bits.

As a result, the LDPC information bits among the LDPC bits may not beinterleaved by the group-wise interleaver but the LDPC parity bits amongthe LDPC bits may be interleaved by the group-wise interleaver. In thiscase, the LDPC parity bits may be interleaved in a group unit.

In detail, the group-wise interleaver may perform the group-wiseinterleaving on the LDPC codeword output from the parity interleaverbased on following Equation 26.

Y _(j) =X _(j), 0≤j<K _(ldpc)/360

Y _(j) =X _(πp(j)) , K _(ldpc)/360≤j<N _(group)  (26)

Here, Y_(j) represents a group-wise interleaved j-th bit group, X_(j)represents a j-th bit group among the plurality of bit groupsconfiguring the LDPC codeword, that is, the j-th bit group prior to thegroup-wise interleaving. Further, π_(p)(j) represents a permutationorder for the group-wise interleaving.

The permutation order may be defined based on following Table 11 andTable 12. Here, Table 11 shows a group-wise interleaving pattern of aparity portion in the L1-basic modes and the L1-detail modes 1 and 2,and Table 12 shows a group-wise interleaving pattern of a parity portionfor the L1-detail modes 3, 4, 5, 6 and 7.

In this case, the group-wise interleaver may determine the group-wiseinterleaving pattern according to a corresponding mode shown infollowing Tables 11 and 12.

TABLE 11 Order of group-wise interleaving π_(p)(j) (9 ≤ j < 45) π_(p)(9)π_(p)(10) π_(p)(11) π_(p)(12) π_(p)(13) π_(p)(14) π_(p)(15) π_(p)(16)π_(p)(17) π_(p)(18) π_(p)(19) π_(p)(20) Signaling π_(p)(21) π_(p)(22)π_(p)(23) π_(p)(24) π_(p)(25) π_(p)(26) π_(p)(27) π_(p)(28) π_(p)(29)π_(p)(30) π_(p)(31) π_(p)(32) FEC Type N_(group) π_(p)(33) π_(p)(34)π_(p)(35) π_(p)(36) π_(p)(37) π_(p)(38) π_(p)(39) π_(p)(40) π_(p)(41)π_(p)(42) π_(p)(43) π_(p)(44) L1-Basic 45 20 23 25 32 36 41 18 9 10 1131 24 (all modes) 14 15 26 40 33 19 28 34 16 39 27 30 21 44 43 35 42 3612 13 29 22 37 17 L1-Detail 16 22 27 30 37 44 20 23 25 32 38 41 Mode 1 910 17 18 21 33 35 14 28 12 15 19 11 24 29 34 36 13 40 43 31 26 39 42L1-Detail 9 31 23 10 11 25 43 29 36 16 27 34 Mode 2 26 18 37 15 13 17 3521 20 24 44 12 22 40 19 32 38 41 30 33 14 28 39 42

TABLE 12 Order of group-wise interleaving π_(p)(j) (18 ≤ j < 45)Signaling π_(p)(18) π_(p)(19) π_(p)(20) π_(p)(21) π_(p)(22) π_(p)(23)π_(p)(24) π_(p)(25) π_(p)(26) π_(p)(27) π_(p)(28) π_(p)(29) π_(p)(30)π_(p)(31) FEC Type N_(group) π_(p)(32) π_(p)(33) π_(p)(34) π_(p)(35)π_(p)(36) π_(p)(37) π_(p)(38) π_(p)(39) π_(p)(40) π_(p)(41) π_(p)(42)π_(p)(43) π_(p)(44) L1-Detail 45 19 37 30 42 23 44 27 40 21 34 25 32 2924 Mode 3 26 35 39 20 18 43 31 36 38 22 33 28 41 L1-Detail 20 35 42 3926 23 30 18 28 37 32 27 44 43 Mode 4 41 40 38 36 34 33 31 29 25 24 22 2119 L1-Detail 19 37 33 26 40 43 22 29 24 35 44 31 27 20 Mode 5 21 39 2542 34 18 32 38 23 30 28 36 41 L1-Detail 20 35 42 39 26 23 30 18 28 37 3227 44 43 Mode 6 41 40 38 36 34 33 31 29 25 24 22 21 19 L1-Detail 44 2329 33 24 28 21 27 42 18 22 31 32 37 Mode 7 43 30 25 35 20 34 39 36 19 4140 26 38

Hereinafter, for the group-wise interleaving pattern in the L1-detailmode 2 as an example, an operation of the group-wise interleaver will bedescribed.

In the L1-detail mode 2, the LDPC encoder 315 performs LDPC encoding on3240 LDPC information bits at a code rate of 3/15 to generate 12960 LDPCparity bits. In this case, an LDPC codeword may be formed of 16200 bits.

Each bit group is formed of 360 bits, and as a result the LDPC codewordformed of 16200 bits is divided into 45 bit groups.

Here, since the number of the LDPC information bits is 3240 and thenumber of the LDPC parity bits is 12960, a 0-th bit group to an 8-th bitgroup correspond to the LDPC information bits and a 9-th bit group to a44-th bit group correspond to the LDPC parity bits.

In this case, the group-wise interleaver does not perform interleavingon the bit groups configuring the LDPC information bits, that is, a 0-thbit group to a 8-th bit group based on above Equation 26 and Table 11,but may interleave the bit groups configuring the LDPC parity bits, thatis, a 9-th bit group to a 44-th bit group in a group unit to change anorder of the 9-th bit group to the 44-th bit group.

In detail, in the L1-detail mode 2 in above Table 11, above Equation 26may be represented like Y₀=X₀, Y₁=X₁, . . . , Y₇=X₇, Y₈=X₈,Y₉=X_(πp(9))=X₉, Y₁₀=X_(πp(10))=X₃₁, Y₁₁=X_(πp(11))=X₂₃, . . . ,Y₄₂=X_(πp(42))=X₂₈, Y₄₃=X_(πp(43))=X₃₉, Y₄₄=X_(πp(44))=X₄₂.

Therefore, the group-wise interleaver does not change an order of the0-th bit group to the 8-th bit group including the LDPC information bitsbut may change an order of the 9-th bit group to the 44-th bit groupincluding the LDPC parity bits.

In detail, the group-wise interleaver may change the order of the bitgroups from the 9-th bit group to the 44-th bit group so that the 9-thbit group is positioned at the 9-th position, the 31-th bit group ispositioned at the 10-th position, the 23-th bit group is positioned atthe 11-th position, . . . , the 28-th bit group is positioned at the42-th position, the 39-th bit group is positioned at the 43-th position,the 42-th bit group is positioned at the 44-th position.

As described below, since the puncturers 217 and 318 perform puncturingfrom the last parity bit, the parity bit groups may be arranged in aninverse order of the puncturing pattern by the parity permutation. Thatis, the first bit group to be punctured is positioned at the last bitgroup.

The foregoing example describes that only the parity bits areinterleaved, which is only one example. That is, the parity permutators215 and 316 may also interleave the LDPC information bits. In this case,the parity permutators 215 and 316 may interleave the LDPC informationbits with identity and output the LDPC information bits having the sameorder before the interleaving so that the order of the LDPC informationbits is not changed.

The repeaters 216 and 317 may repeat at least some bits of the paritypermutated LDPC codeword at a position subsequent to the LDPCinformation bits, and output the repeated LDPC codeword, that is, theLDPC codeword bits including the repetition bits, to the puncturers 217and 318. The repeater 317 may also output the repeated LDPC codeword tothe additional parity generator 319. In this case, the additional paritygenerator 319 may use the repeated LDPC codeword to generate theadditional parity bits.

In detail, the repeaters 216 and 317 may repeat a predetermined numberof LDPC parity bits after the LDPC information bits. That is, therepeaters 216 and 317 may add the predetermined number of repeated LDPCparity bits after the LDPC information bits. Therefore, the repeatedLDPC parity bits are positioned between the LDPC information bits andthe LDPC parity bits within the LDPC codeword.

Therefore, since the predetermined number of bits within the LDPCcodeword after the repetition may be repeated and additionallytransmitted to the receiver 200, the foregoing operation may be referredto as repetition.

The term “adding” represents disposing the repetition bits between theLDPC information bits and the LDPC parity bits so that the bits arerepeated.

The repetition may be performed only on the L1-basic mode 1 and theL1-detail mode 1, and may not be performed on the other modes. In thiscase, the repeaters 216 and 317 do not perform the repetition and mayoutput the parity permutated LDPC codeword to the puncturers 217 and318.

Hereinafter, a method for performing repetition will be described inmore detail.

The repeaters 216 and 317 may calculate a number N_(repeat) of bitsadditionally transmitted per an LDPC codeword based on followingEquation 27.

N _(repeat)=2×└C×N _(outer) ┘+D  (27)

In above Equation 27, C has a fixed number and D may be an even integer.Referring to above Equation 27, it may be appreciated that the number ofbits to be repeated may be calculated by multiplying C by a givenN_(outer) and adding D thereto.

The parameters C and D for the repetition may be selected based onfollowing Table 13. That is, the repeaters 216 and 317 may determine theC and D based on a corresponding mode as shown in following Table 13.

TABLE 13 N_(ldpc)_parity N_(outer) K_(sig) K_(ldpc) C D (=N_(inner) −K_(ldpc)) η_(MOD) L1-Basic Mode 1 368 200 3240 0 3672 12960 2 L1-DetailMode 1 568~2520 400~2352 3240 61/16 −508 12960 2

Further, the repeaters 216 and 317 may repeat N_(repeat) LDPC paritybits.

In detail, when N_(repeat)≤N_(ldpc_parity), the repeaters 216 and 317may add first N_(repeat) bits of the parity permutated LDPC parity bitsto the LDPC information bits as illustrated in FIG. 12. That is, therepeaters 216 and 317 may add a first LDPC parity bit among the paritypermutated LDPC parity bits as an N_(repeat)-th LDPC parity bit afterthe LDPC information bits.

When N_(repeat)>N_(ldpc_parity), the repeaters 216 and 317 may add theparity permutated N_(ldpc_parity) LDPC parity bits to the LDPCinformation bits as illustrated in FIG. 15, and may additionally add anN_(repeat)−N_(ldpc_parity) number of the parity permutated LDPC paritybits to the N_(ldpc_parity) LDPC parity bits which are first added. Thatis, the repeaters 216 and 317 may add all the parity permutated LDPCparity bits after the LDPC information bits and additionally add thefirst LDPC parity bit to the N_(repeat)−N_(ldpc_parity)-th LDPC paritybit among the parity permutated LDPC parity bits after the LDPC paritybits which are first added.

Therefore, in the L1-basic mode 1 and the L1-detail mode 1, theadditional N_(repeat) bits may be selected within the LDPC codeword andtransmitted.

The puncturers 217 and 318 may puncture some of the LDPC parity bitsincluded in the LDPC codeword output from the repeaters 216 and 317, andoutput a punctured LDPC codeword (that is, the remaining LDPC codewordbits other than the punctured bits and also referred to as an LDPCcodeword after puncturing) to the zero removers 218 and 321. Further,the puncturer 318 may provide information (for example, the number andpositions of punctured bits, etc.) about the punctured LDPC parity bitsto the additional parity generator 319. In this case, the additionalparity generator 319 may generate additional parity bits based thereon.

As a result, after going through the parity permutation, some LDPCparity bits may be punctured.

In this case, the punctured LDPC parity bits are not transmitted in aframe in which L1 signaling bits are transmitted. In detail, thepunctured LDPC parity bits are not transmitted in a current frame inwhich the L1-signaling bits are transmitted, and in some cases, thepunctured LDPC parity bits may be transmitted in a frame before thecurrent frame, which will be described with reference to the additionalparity generator 319.

For this purpose, the puncturers 217 and 318 may determine the number ofLDPC parity bits to be punctured per LDPC codeword and a size of onecoded block.

In detail, the puncturers 217 and 318 may calculate a temporary numberN_(punc_temp) of LDPC parity bits to be punctured based on followingEquation 28. That is, for a given N_(outer), the puncturers 217 and 318may calculate the temporary number N_(punc_temp) of LDPC parity bits tobe punctured based on following Equation 28.

N _(punc_temp) =└A×(K _(ldpc) −N _(outer))┘+B  (28)

Referring to above Equation 28, the temporary size of bits to bepunctured may be calculated by adding a constant integer B to an integerobtained from a result of multiplying a shortening length (that is,K_(ldpc)−N_(outer)) by a preset constant A value. In the presentexemplary embodiment, it is apparent that the constant A value is set ata ratio of the number of bits to be punctured to the number of bits tobe shortened but may be variously set according to requirements of asystem.

The B value is a value which represents a length of bits to be puncturedeven when the shortening length is 0, and thus, represents a minimumlength that the punctured bits can have. Further, the A and B valuesserve to adjust an actually transmitted code rate. That is, to preparefor a case in which the length of information bits, that is, the lengthof the L1 signaling is short or a case in which the length of the L1signaling is long, the A and B values serve to adjust the actuallytransmitted code rate to be reduced.

The above K_(ldpc), A and B are listed in following Table 14 which showsparameters for puncturing. Therefore, the puncturers 217 and 318 maydetermine the parameters for puncturing according to a correspondingmode as shown in following Table 14.

TABLE 14 Signaling FEC Type N_(outer) K_(ldpc) A B N_(ldpc)_parityη_(MOD) L1- Mode 1 368 3240 0 9360 12960 2 Basic Mode 2 11460 2 Mode 312360 2 Mode 4 12292 4 Mode 5 12350 6 Mode 6 12432 8 Mode 7 12776 8 L1-Mode 1 568~2520 7/2 0 2 Detail Mode 2 568~3240 2 6036 2 Mode 3 568~64806480 11/16 4653 9720 2 Mode 4 29/32 3200 4 Mode 5 3/4 4284 6 Mode 611/16 4900 8 Mode 7  49/256 8246 8

The puncturers 217 and 3 18 may calculate a temporary size N_(FEC_temp)of one coded block as shown in following Equation 29. Here, the numberN_(ldpc_parity) of LDPC parity bits according to a corresponding mode isshown as above Table 14.

N _(FEC_temp) =N _(outer) +N _(ldpc_parity) −N _(punc_temp)  (29)

Further, the puncturers 217 and 318 may calculate a size N_(FEC) of onecoded block as shown in following Equation 30.

$\begin{matrix}{N_{FEC} = {\left\lceil \frac{N_{{FEC}\_ {temp}}}{\eta_{MOD}} \right\rceil \times \eta_{MOD}}} & (30)\end{matrix}$

In above Equation 30, η_(MOD) is a modulation order. For example, whenthe L1-basic signaling and the L1-detail signaling are modulated byQPSK, 16-QAM, 64-QAM or 256-QAM according to a corresponding mode,η_(MOD) may be 2, 4, 6 and 8 as shown in above Table 14. According toabove Equation 30, N_(FEC) may be an integer multiple of the modulationorder.

Further, the puncturers 217 and 318 may calculate the number N_(punc) ofLDPC parity bits to be punctured based on following Equation 31.

N _(punc) =N _(punc_temp)−(N _(FEC) −N _(FEC_temp))  (31)

Here, N_(punc) is 0 or a positive integer. Further, N_(FEC) is thenumber of bits of an information block which are obtained by subtractingN_(punc) bits to be punctured from N_(outer)+N_(ldpc_parity) bitsobtained by performing the BCH encoding and the LDPC encoding on K_(sig)information bits. That is, N_(FEC) is the number of bits other than therepetition bits among the actually transmitted bits, and may be calledthe number of shortened and punctured LDPC codeword bits.

Referring to the foregoing process, the puncturers 217 and 318multiplies A by the number of padded zero bits, that is, a shorteninglength and adding B to a result to calculate the temporary numberN_(punc_temp) of LDPC parity bits to be punctured.

Further, the puncturers 217 and 318 calculate the temporary numberN_(FEC_temp) of LDPC codeword bits to constitute the LDPC codeword afterpuncturing and shortening based on the N_(punc_temp).

In detail, the LDPC information bits are LDPC-encoded, and the LDPCparity bits generated by the LDPC encoding are added to the LDPCinformation bits to configure the LDPC codeword. Here, the LDPCinformation bits include the BCH-encoded bits in which the L1-basicsignaling and the L1-detail signaling are BCH encoded, and in somecases, may further include padded zero bits.

In this case, since the padded zero bits are LDPC-encoded, and then, arenot transmitted to the receiver 200, the shortened LDPC codeword, thatis, the LDPC codeword (that is, shortened LDPC codeword) except thepadded zero bits may be formed of the BCH-encoded bits and LDPC paritybits.

Therefore, the puncturers 217 and 318 subtract the temporary number ofLDPC parity bits to be punctured from a sum of the number of BCH-encodedbits and the number of LDPC parity bits to calculate the N_(FEC_temp).

The punctured and shortened LDPC codeword (that is, LDPC codeword bitsremaining after puncturing and shortening) are mapped to constellationsymbols by various modulation schemes such as QPSK, 16-QAM, 64-QAM or256-QAM according to a corresponding mode, and the constellation symbolsmay be transmitted to the receiver 200 through a frame.

Therefore, the puncturers 217 and 318 determine the number N_(FEC) ofLDPC codeword bits to constitute the LDPC codeword after puncturing andshortening based on N_(FEC_temp), N_(FEC) being an integer multiple ofthe modulation order, and determine the number N_(punc) of bits whichneed to be punctured based on LDPC codeword bits after shortening toobtain the N_(FEC).

When zero bits are not padded, an LDPC codeword may be formed ofBCH-encoded bits and LDPC parity bits, and the shortening may beomitted.

Further, in the L1-basic mode 1 and the L1-detail mode 1, repetition isperformed, and thus, the number of shortened and punctured LDPC codewordbits is equal to N_(FEC)+N_(repeat).

The puncturers 217 and 318 may puncture the LDPC parity bits as many asthe calculated number.

In this case, the puncturers 217 and 318 may puncture the last N_(punc)bits of all the LDPC codewords. That is, the puncturers 217 and 318 maypuncture the N_(punc) bits from the last LDPC parity bits.

In detail, when the repetition is not performed, the parity permutatedLDPC codeword includes only LDPC parity bits generated by the LDPCencoding.

In this case, the puncturers 217 and 318 may puncture the last N_(punc)bits of all the parity permutated LDPC codewords. Therefore, theN_(punc) bits from the last LDPC parity bits among the LDPC parity bitsgenerated by the LDPC encoding may be punctured.

When the repetition is performed, the parity permutated and repeatedLDPC codeword includes the repeated LDPC parity bits and the LDPC paritybits generated by the LDPC encoding.

In this case, the puncturers 217 and 318 may puncture the last N_(punc)bits of all the parity permutated and repeated LDPC codewords,respectively, as illustrated in FIGS. 14 and 15.

In detail, the repeated LDPC parity bits are positioned between the LDPCinformation bits and the LDPC parity bits generated by the LDPCencoding, and thus, the puncturers 217 and 318 may puncture the N_(punc)bits from the last LDPC parity bits among the LDPC parity bits generatedby the LDPC encoding, respectively.

As such, the puncturers 217 and 318 may puncture the N_(punc) bits fromthe last LDPC parity bits, respectively.

N_(punc) is 0 or a positive integer and the repetition may be appliedonly to the L1-basic mode 1 and the L1-detail mode 1.

The foregoing example describes that the repetition is performed, andthen, the puncturing is performed, which is only one example. In somecases, after the puncturing is performed, the repetition may beperformed.

The additional parity generator 319 may select bits from the LDPC paritybits to generate additional parity (AP) bits.

In this case, the additional parity bits may be selected from the LDPCparity bits generated based on the L1-detail signaling transmitted in acurrent frame, and transmitted to the receiver 200 through a framebefore the current frame, that is, a previous frame.

In detail, the L1-detail signaling is LDPC-encoded, and the LDPC paritybits generated by the LDPC encoding are added to the L1-detail signalingto configure an LDPC codeword.

Further, puncturing and shortening are performed on the LDPC codeword,and the punctured and shortened LDPC codeword may be mapped to a frameto be transmitted to the receiver 200. Here, when the repetition isperformed according to a corresponding mode, the punctured and shortenedLDPC codeword may include the repeated LDPC parity bits.

In this case, the L1-detail signaling corresponding to each frame may betransmitted to the receiver 200 through each frame, along with the LDPCparity bits. For example, the punctured and shortened LDPC codewordincluding the L1-detail signaling corresponding to an (i−1)-th frame maybe mapped to the (i−1)-th frame to be transmitted to the receiver 200,and the punctured and shortened LDPC codeword including the L1-detailsignaling corresponding to the i-th frame may be mapped to the i-thframe to be transmitted to the receiver 200.

The additional parity generator 319 may select at least some of the LDPCparity bits generated based on the L1-detail signaling transmitted inthe i-th frame to generate the additional parity bits.

In detail, some of the LDPC parity bits generated by performing the LDPCencoding on the L1-detail signaling are punctured, and then, are nottransmitted to the receiver 200. In this case, the additional paritygenerator 319 may select at least some of the punctured LDPC parity bitsamong the LDPC parity bits generated by performing the LDPC encoding onthe L1-detail signaling transmitted in the i-th frame, therebygenerating the additional parity bits.

Further, the additional parity generator 319 may select at least some ofthe LDPC parity bits to be transmitted to the receiver 200 through thei-th frame to generate the additional parity bits.

In detail, the LDPC parity bits included in the punctured and shortenedLDPC codeword to be mapped to the i-th frame may be configured of onlythe LDPC parity bits generated by the LDPC encoding according to acorresponding mode or the LDPC parity bits generated by the LDPCencoding and the repeated LDPC parity bits.

In this case, the additional parity generator 319 may select at leastsome of the LDPC parity bits included in the punctured and shortenedLDPC codeword to be mapped to the i-th frame to generate the additionalparity bits.

The additional parity bits may be transmitted to the receiver 200through the frame before the i-th frame, that is, the (i−1)-th frame.

That is, the transmitter 100 may not only transmit the punctured andshortened LDPC codeword including the L1-detail signaling correspondingto the (i−1)-th frame but also transmit the additional parity bitsgenerated based on the L1-detail signaling transmitted in the i-th frameto the receiver 200 through the (i−1)-th frame.

In this case, the frame in which the additional parity bits aretransmitted may be temporally the most previous frame among the framesbefore the current frame.

For example, the additional parity bits have the same bootstrapmajor/minor version as the current frame among the frames before thecurrent frame, and may be transmitted in temporally the most previousframe.

In some cases, the additional parity generator 319 may not generate theadditional parity bits.

In this case, the transmitter 100 may transmit information about whetheradditional parity bits for an L1-detail signaling of a next frame aretransmitted through the current frame to the receiver 200 using anL1-basic signaling transmitted through the current frame.

For example, the use of the additional parity bits for the L1-detailsignaling of the next frame having the same bootstrap major/minorversion as the current frame may be signaled through a field L1B_L1Detail_additional_parity_mode of the L1-basic parameter of the currentframe. In detail, when the L1B_L1_Detail_additional_parity_mode in theL1-basic parameter of the current frame is set to be ‘00’, additionalparity bits for the L1-detail signaling of the next frame are nottransmitted in the current frame.

As such, to additionally increase robustness of the L1-detail signaling,the additional parity bits may be transmitted in the frame before thecurrent frame in which the L1-detail signaling of the current frame istransmitted.

FIG. 16 illustrates an example in which the additional parity bits forthe L1-detail signaling of the i-th frame are transmitted in a preambleof the (i−1)-th frame.

FIG. 16 illustrates that the L1-detail signaling transmitted through thei-th frame is segmented into M blocks by segmentation and each of thesegmented blocks is FEC encoded.

Therefore, M number of LDPC codewords, that is, an LDPC codewordincluding LDPC information bits L1-D(i)_1 and parity bits parity forL1-D(i)_1 therefor, . . . , and an LDPC codeword including LDPCinformation bits L1-D(i)_M and parity bits parity for L1-D(i)_M thereforare mapped to the i-th frame to be transmitted to the receiver 200.

In this case, the additional parity bits generated based on theL1-detail signaling transmitted in the i-th frame may be transmitted tothe receiver 200 through the (i−1)-th frame.

In detail, the additional parity bits, that is, AP for L1-D(i)_1, . . .AP for L1-D(i)_M generated based on the L1-detail signaling transmittedin the i-th frame may be mapped to the preamble of the (i−1)-th frame tobe transmitted to the receiver 200. As a result of using the additionalparity bits, a diversity gain for the L1 signaling may be obtained.

Hereinafter, a method for generating additional parity bits will bedescribed in detail.

The additional parity generator 319 calculates a temporary numberN_(AP_temp) of additional parity bits based on following Equation 32.

$\begin{matrix}{{{N_{{AP}\_ {temp}} = {\min \begin{Bmatrix}{0.5 \times K \times \left( {N_{outer} + N_{{ldpc}\_ {parity}} - N_{punc} + N_{repeat}} \right)} \\\left( {N_{{ldpc}\_ {parity}} + N_{punc} + N_{repeat}} \right)\end{Bmatrix}}},\mspace{20mu} {K = 0},1,2}\mspace{20mu} {{\min \left( {a,b} \right)} = \left\{ {\begin{matrix}{a,{{{if}\mspace{14mu} a} \leq b}} \\{b,{{{if}\mspace{14mu} b} < a}}\end{matrix}.} \right.}} & (32)\end{matrix}$

In above Equation 32,

Further, K represents a ratio of the additional parity bits to a half ofa total number of bits of a transmitted coded L1-detail signaling block(that is, bits configuring the L1-detail signaling block repeated,punctured, and have the zero bits removed (that is, shortened)).

In this case, K corresponds to an L1B_L1_Detail_additional_parity_modefield of the L1-basic signaling. Here, a value of theL1B_L1_Detail_additional_parity_mode associated with the L1-detailsignaling of the i-th frame (that is, frame (# i)) may be transmitted inthe (i−1)-th frame (that is, frame (# i−1)).

As described above, when L1 detail modes are 2, 3, 4, 5, 6 and 7, sincerepetition is not performed, in above Equation 32, N_(repeat) is 0.

Further, the additional parity generator 319 calculates the numberN_(AP) of additional parity bits based on following Equation 33.Therefore, the number N_(AP) of additional parity bits may be an integermultiple of a modulation order.

$\begin{matrix}{N_{AP} = {\left\lceil \frac{N_{{Ap}\_ {temp}}}{\eta_{MOD}} \right\rceil \times \eta_{MOD}}} & (33)\end{matrix}$

In above Equation 33, ┌x┐ is a maximum integer which is not greater thanx. Here, η_(MOD) is the modulation order. For example, when theL1-detail signaling is modulated by QPSK, 16-QAM, 64-QAM or 256-QAMaccording to a corresponding mode, the i_(MOD) may be 2, 4, 6 or 8,respectively.

As such, the number of additional parity bits to be generated may bedetermined based on the total number of bits transmitted in the currentframe.

Next, the additional parity generator 319 may select bits as many as thenumber of bits calculated in the LDPC parity bits to generate theadditional parity bits.

In detail, when the number of punctured LDPC parity bits is equal to orgreater than the number of additional parity bits to be generated, theadditional parity generator 319 may select bits as many as thecalculated number from the first LDPC parity bit among the puncturedLDPC parity bits to generate the additional parity bits.

When the number of punctured LDPC parity bits is less than the number ofadditional parity bits to be generated, the additional parity generator319 may first select all the punctured LDPC parity bits and additionallyselect bits as many as the number obtained by subtracting the number ofpunctured LDPC parity bits from the number of additional parity bits tobe generated, from the first LDPC parity bit among the LDPC parity bitsincluded in the LDPC codeword to generate the additional parity bits.

In detail, when the repetition is not performed, LDPC parity bitsincluded in a repeated LDPC codeword are the LDPC parity bits generatedby the LDPC encoding.

In this case, the additional parity generator 319 may first select allthe punctured LDPC parity bits and additionally select bits as many asthe number obtained by subtracting the number of punctured LDPC paritybits from the number of additional parity bits to be generated, from thefirst LDPC parity bit among the LDPC parity bits generated by the LDPCencoding, to generate the additional parity bits.

Here, the LDPC parity bits generated by the LDPC encoding are dividedinto the non-punctured LDPC parity bits and the punctured LDPC paritybits. As a result, when bits are selected from the first bit among theLDPC parity bits generated by the LDPC encoding, they may be selected inan order of the non-punctured LDPC parity bits and the punctured LDPCparity bits.

When the repetition is performed, the LDPC parity bits included in therepeated LDPC codeword are the repeated LDPC parity bits and the LDPCparity bits generated by the LDPC encoding. Here, the repeated LDPCparity bits are positioned between the LDPC information bits and theLDPC parity bits generated by the LDPC encoding.

In this case, the additional parity generator 319 may first select allthe punctured LDPC parity bits and additionally select the bits as manyas the number obtained by subtracting the number of punctured LDPCparity bits from the number of additional bits, from the first LDPCparity bit among the repeated LDPC parity bits to generate theadditional parity bits.

Here, when the bits are selected from the first bit among the repeatedLDPC parity bits, they may be selected in an order of the repetitionbits and the LDPC parity bits generated by the LDPC encoding. Further,the bits may be selected in an order of the non-punctured LDPC paritybits and the punctured LDPC parity bits, within the LDPC parity bitsgenerated by the LDPC encoding.

Hereinafter, methods for generating additional parity bits according toexemplary embodiments will be described in more detail with reference toFIGS. 17 to 19.

FIGS. 17 to 19 are diagrams for describing the method for generatingadditional parity bits when repetition is performed, according to theexemplary embodiment. In this case, the repeated LDPC codeword V=(v₀,v₁, . . . , v_(N) _(inner) _(+N) _(repeat) ⁻¹) may be represented asillustrated in FIG. 17.

First, in the case of N_(AP)≤N_(punc), as illustrated in FIG. 18, theadditional parity generator 319 may select N_(AP) bits from the firstLDPC parity bit among punctured LDPC parity bits to generate theadditional parity bits.

Therefore, for the additional parity bits, the punctured LDPC paritybits (v_(N) _(repeat) _(+N) _(inner) _(−N) _(punc) , v_(N) _(repeat)_(+N) _(inner) _(−N) _(punc) ₊₁, . . . , v_(N) _(repeat) _(+N) _(inner)_(−N) _(punc) _(−N) _(AP) ⁻¹) may be selected. That is, the additionalparity generator 319 may select N_(AP) bits from the first LDPC paritybit among the punctured LDPC parity bits to generate the additionalparity bits.

Meanwhile, in the case of N_(AP)>N_(punc), as illustrated in FIG. 19,the additional parity generator 319 selects all the punctured LDPCparity bits.

Therefore, for the additional parity bits, all the punctured LDPC paritybits (v_(N) _(repeat) _(+N) _(inner) _(−N) _(punc) , v_(N) _(repeat)_(+N) _(inner) _(−N) _(punc) ₊₁, . . . , v_(N) _(repeat) _(+N) _(inner)⁻¹) may be selected.

Further, the additional parity generator 319 may additionally selectfirst N_(AP)−N_(punc) bits from the LDPC parity bits including therepeated LDPC parity bits and the LDPC parity bits generated by the LDPCencoding.

That is, since the repeated LDPC parity bits and the LDPC parity bitsgenerated by the LDPC encoding are sequentially arranged, the additionalparity generator 319 may additionally select the N_(AP)−N_(punc) paritybits from the first LDPC parity bit among the LDPC parity bits added bythe repetition.

Therefore, for the additional parity bits, the LDPC parity bits (v_(K)_(ldpc) , v_(K) _(ldpc) ₊₁, . . . , v_(K) _(ldpc) _(+N) _(AP) _(−N)_(punc) ⁻¹) may be additionally selected.

In this case, the additional parity generator 319 may add theadditionally selected bits to the previously selected bits to generatethe additional parity bits. That is, as illustrated in FIG. 19, theadditional parity generator 319 may add the additionally selected LDPCparity bits to the punctured LDPC parity bits to generate the additionalparity bits.

As a result, for the additional parity bits, (v_(N) _(repeat) _(+N)_(inner) _(−N) _(punc) , v_(N) _(repeat) _(+N) _(inner) _(−N) _(punc)₊₁, . . . , v_(N) _(repeat) _(+N) _(inner) ⁻¹, v_(K) _(ldpc) , v_(K)_(ldpc) ₊₁, . . . , v_(K) _(ldpc) _(+N) _(AP) _(−N) _(punc) ⁻¹) may beselected.

As such, when the number of punctured bits is equal to or greater thanthe number of additional parity bits, the additional parity bits may begenerated by selecting bits among the punctured bits based on thepuncturing order. However, in other cases, the additional parity bitsmay be generated by selecting all the punctured bits and theN_(AP)-N_(punc) parity bits.

Since N_(repeat)=0 when repetition is not performed, the method forgenerating additional parity bits when the repetition is not performedis the same as the case in which N_(repeat)=0 in FIGS. 17 to 19.

The additional parity bits may be bit-interleaved, and may be mapped toconstellation. In this case, the constellation for the additional paritybits may be generated by the same method as constellation for theL1-detail signaling bits transmitted in the current frame, in which theL1-detail signaling bits are repeated, punctured, and have the zero bitsremoved. Further, as illustrated in FIG. 18, after being mapped to theconstellation, the additional parity bits may be added after theL1-detail signaling block in a frame before the current frame in whichthe L1-detail signaling of the current frame is transmitted.

The additional parity generator 319 may output the additional paritybits to a bit demultiplexer 323.

As described above in reference to Tables 11 and 12, the group-wiseinterleaving pattern defining the permutation order may have twopatterns: a first pattern and a second pattern.

In detail, since the B value of above Equation 28 represents the minimumlength of the LDPC parity bits to be punctured, the predetermined numberof bits may be always punctured depending on the B value regardless ofthe length of the input signaling. For example, in the L1-detail mode 2,since B=6036 and the bit group is formed of 360 bits, even when theshortening length is 0, at least

$\left\lfloor \frac{6036}{360} \right\rfloor = 16$

bit groups are always punctured.

In this case, since the puncturing is performed from the last LDPCparity bit, the predetermined number of bit groups from a last bit groupamong the plurality of bit groups configuring the group-wise interleavedLDPC parity bits may be always punctured regardless of the shorteninglength.

For example, in the L1-detail mode 2, the last 16 bit groups among 36bit groups configuring the group-wise interleaved LDPC parity bits maybe always punctured.

As a result, some of the group-wise interleaving patterns defining thepermutation order represent bit groups always to punctured, andtherefore, the group-wise interleaving pattern may be divided into twopatterns. In detail, a pattern defining the remaining bit groups otherthan the bit groups to be always punctured in the group-wiseinterleaving pattern is referred to as the first pattern, and thepattern defining the bit groups to be always punctured is referred to asthe second pattern.

For example, in the L1-detail mode 2, since the group-wise interleavingpattern is defined as above Table 11, a pattern representing indexes ofbit groups which are not group-wise interleaved and positioned in a 9-thbit group to a 28-th bit group after group-wise interleaving, that is,Y₉=X_(πp(9))=X₉, Y₁₀=X_(πp(10))=X₃₁, Y₁₁=X_(πp(11))=X₂₃, . . . ,Y₂₆=X_(πp(26))=X₁₇, Y₂₇=X_(πp(27))=X₃₅, Y₂₈=X_(πp(28))=X₂₁ may be thefirst pattern, and a pattern representing indexes of bit groups whichare not group-wise interleaved and positioned in a 29-th bit group to a44-th bit group after group-wise interleaving, that is,Y₂₉=X_(πp(29))=X₂₀, Y₃₀=X_(πp(30))=X₂₄, Y₃₁=X_(πp(31))=X₄₄, . . . ,Y₄₂=X_(πp(42))=X₂₈, Y₄₃=X_(πp(43))=X₃₉, Y₄₄=X_(πp(44))=X₄₂ may be thesecond pattern.

As described above, the second pattern defines bit groups to be alwayspunctured in a current frame regardless of the shortening length, andthe first pattern defines bit groups additionally to be punctured as theshortening length is long, such that the first pattern may be used todetermine the LDPC parity bits to be transmitted in the current frameafter the puncturing.

In detail, according to the number of LDPC parity bits to be punctured,in addition to the LDPC parity bits to be always punctured, more LDPCparity bits may additionally be punctured.

For example, in the L1-detail mode 2, when the number of LDPC paritybits to be punctured is 7200, 20 bit groups need to be punctured, andthus, four (4) bit groups need to be additionally punctured, in additionto the 16 bit groups to be always punctured.

In this case, the additionally punctured four (4) bit groups correspondto the bit groups positioned at 25-th to 28-th positions aftergroup-wise interleaving, and since these bit groups are determinedaccording to the first pattern, that is, belong to the first pattern,the first pattern may be used to determine the punctured bit groups.

That is, when LDPC parity bits are punctured more than a minimum valueof LDPC parity bits to be punctured, which bit groups are to beadditionally punctured is determined according to which bit groups arepositioned after the bit groups to be always punctured. As a result,according to a puncturing direction, the first pattern which defines thebit groups positioned after the bit groups to be always punctured may beconsidered as determining the punctured bit groups.

That is, as in the foregoing example, when the number of LDPC paritybits to be punctured is 7200, in addition to the 16 bit groups to bealways punctured, four (4) bit groups, that is, the bit groupspositioned at 28-th, 27-th, 26-th, and 25-th positions, after group-wiseinterleaving is performed, are additionally punctured. Here, the bitgroups positioned at 25-th to 28-th positions after the group-wiseinterleaving are determined according to the first pattern.

As a result, the first pattern may be considered as being used todetermine the bit groups to be punctured. Further, the remaining LDPCparity bits other than the punctured LDPC parity bits are transmittedthrough the current frame, and therefore, the first pattern may beconsidered as being used to determine the bit groups transmitted in thecurrent frame.

The second pattern may be used to determine the additional parity bitsto be transmitted in the previous frame.

In detail, since the bit groups determined to be always punctured arealways punctured, and then, are not transmitted in the current frame,these bit groups need to be positioned only where bits are alwayspunctured after group-wise interleaving. Therefore, it is not importantat which position of these bit groups are positioned after thegroup-wise interleaving.

For example, in the L1-detail mode 2, bit groups positioned at 20-th,24-th, 44-th, . . . , 28-th, 39-th and 42-th positions before thegroup-wise interleaving need to be positioned only at a 29-th bit groupto a 44-th bit group after the group-wise interleaving. Therefore, it isnot important at which positions of these bit groups are positioned.

As such, the second pattern defining bit groups to be always puncturedis used to identify bit groups to be punctured. Therefore, defining anorder between the bit groups in the second pattern is meaningless in thepuncturing, and thus, the second pattern defining bit groups to bealways punctured may be considered as not being used for the puncturing.

However, for determining additional parity bits, positions of the bitgroups to be always punctured within these bit groups need to beconsidered.

In detail, since the additional parity bits are generated by selectingbits as many as a predetermined number from the first bit among thepunctured LDPC parity bits, bits included in at least some of the bitgroups to be always punctured may be selected as at least some of theadditional parity bits depending on the number of punctured LDPC paritybits and the number of additional parity bits to be generated.

That is, when additional parity bits are selected over the number of bitgroups defined according to the first pattern, since the additionalparity bits are sequentially selected from a start portion of the secondpattern, the order of the bit groups belonging to the second pattern ismeaningful in terms of selection of the additional parity bits. As aresult, the second pattern defining bit groups to be always puncturedmay be considered as being used to determine the additional parity bits.

For example, in the L1-detail mode 2, the total number of LDPC paritybits is 12960 and the number of bit groups to be always punctured is 16.

In this case, the second pattern may be used to generate the additionalparity bits depending on whether a value obtained by subtracting thenumber of LDPC parity bits to be punctured from the number of all LDPCparity bits and adding the subtraction result to the number ofadditional parity bits to be generated exceeds 7200. Here, 7200 is thenumber of LDPC parity bits except the bit groups to be always punctured,among the bit groups configuring the LDPC parity bits. That is,7200=(36−16)×360.

In detail, when the value obtained by the above subtraction and additionis equal to or less than 7200, that is, 12960−N_(punc)+N_(AP)≤7200, theadditional parity bits may be generated according to the first pattern.

However, when the value obtained by the above subtraction and additionexceeds 7200, that is, 12960−N_(punc)+N_(AP)>7200, the additional paritybits may be generated according to the first pattern and the secondpattern.

In detail, when 12960−N_(punc)+N_(AP)>7200, for the additional paritybits, bits included in the bit group positioned at a 28-th position fromthe first LDPC parity bit among the punctured LDPC parity bits may beselected, and bits included in the bit group positioned at apredetermined position from a 29-th position may be selected.

Here, the bit group to which the first LDPC parity bit among thepunctured LDPC parity bits belongs and the bit group (that is, whenbeing sequentially selected from the first LDPC parity bit among thepunctured LDPC parity bits, a bit group to which the finally selectedLDPC parity bits belong) at the predetermined position may be determineddepending on the number of punctured LDPC parity bits and the number ofadditional parity bits to be generated.

In this case, the bit group positioned at the 28-th position from thefirth LDPC parity bit among the punctured LDPC parity bits is determinedaccording to the first pattern, and the bit group positioned at thepredetermined position from the 29-th position is determined accordingto the second pattern.

As a result, the additional parity bits are determined according to thefirst pattern and the second pattern.

As such, the first pattern may be used to determine additional paritybits to be generated as well as LDPC parity bits to be punctured, andthe second pattern may be used to determine the additional parity bitsto be generated and LDPC parity bits to be always punctured regardlessof the number of parity bits to be punctured by the puncturers 217 and318.

The foregoing example describes that the group-wise interleaving patternincludes the first pattern and the second pattern, which is only forconvenience of explanation in terms of the puncturing and the additionalparity. That is, the group-wise interleaving pattern may be consideredas one pattern without being divided into the first pattern and thesecond pattern. In this case, the group-wise interleaving may beconsidered as being performed with one pattern both for the puncturingand the additional parity.

The values used in the foregoing example such as the number of puncturedLDPC parity bits are only example values.

The zero removers 218 and 321 may remove zero bits padded by the zeropadders 213 and 314 from the LDPC codewords output from the puncturers217 and 318, and output the remaining bits to the bit demultiplexers 219and 322.

Here, the removal does not only remove the padded zero bits but also mayinclude outputting the remaining bits other than the padded zero bits inthe LDPC codewords.

In detail, the zero removers 218 and 321 may remove K_(ldpc)−N_(outer)zero bits padded by the zero padders 213 and 314. Therefore, theK_(ldpc)−N_(outer) padded zero bits are removed, and thus, may not betransmitted to the receiver 200.

For example, as illustrated in FIG. 20, it is assumed that all bits of afirst bit group, a fourth bit group, a fifth bit group, a seventh bitgroup, and an eighth bit group among a plurality of bit groupsconfiguring an LDPC codeword are padded by zero bits, and some bits ofthe second bit group are padded by zero bits.

In this case, the zero removers 218 and 321 may remove the zero bitspadded to the first bit group, the second bit group, the fourth bitgroup, the fifth bit group, the seventh bit group, and the eighth bitgroup.

As such, when zero bits are removed, as illustrated in FIG. 20, an LDPCcodeword formed of K_(sig) information bits (that is, K_(sig) L1-basicsignaling bits and K_(sig) L1-detail signaling bits), 168 BCH paritycheck bits (that is, BCH FEC), and N_(inner)−K_(ldpc)−N_(punc) orN_(inner)−K_(ldpc)−N_(punc)+N_(repeat) parity bits may remain.

That is, when repetition is performed, the lengths of all the LDPCcodewords become N_(FEC)+N_(repeat). Here,N_(FEC)=N_(outer)+N_(ldpc_parity)−N_(punc). However, in a mode in whichthe repetition is not performed, the lengths of all the LDPC codewordsbecome N_(FEC).

The bit demultiplexers 219 and 322 may interleave the bits output fromthe zero removers 218 and 321, demultiplex the interleaved bits, andthen output them to the constellation mappers 221 and 324.

For this purpose, the bit demultiplexers 219 and 322 may include a blockinterleaver (not illustrated) and a demultiplexer (not illustrated).

First, a block interleaving scheme performed in the block interleaver isillustrated in FIG. 21.

In detail, the bits of the N_(FEC) or N_(FEC)+N_(repeat) length afterthe zero bits are removed may be column-wisely serially written in theblock interleaver. Here, the number of columns of the block interleaveris equivalent to the modulation order and the number of rows isN_(FEC)/η_(MOD) or (N_(FEC)+N_(repeat))/η_(MOD).

Further, in a read operation, bits for one constellation symbol may besequentially read in a row direction to be input to the demultiplexer.The operation may be continued to the last row of the column.

That is, the N_(FEC) or (N_(FEC)+N_(repeat)) bits may be written in aplurality of columns in a column direction from the first row of thefirst column, and the bits written in the plurality of columns aresequentially read from the first row to the last row of the plurality ofcolumns in a row direction. In this case, the bits read in the same rowmay configure one modulation symbol.

The demultiplexer may demultiplex the bits output from the blockinterleaver.

In detail, the demultiplexer may demultiplex each of theblock-interleaved bit groups, that is, the bits output while being readin the same row of the block interleaver within the bit groupbit-by-bit, before the bits are mapped to constellation.

In this case, two mapping rules may be present according to themodulation order.

In detail, when QPSK is used for modulation, since reliability of bitswithin a constellation symbol is the same, the demultiplexer does notperform the demultiplexing operation on a bit group. Therefore, the bitgroup read and output from the block interleaver may be mapped to a QPSKsymbol without the demultiplexing operation.

However, when high order modulation is used, the demultiplexer mayperform demultiplexing on a bit group read and output from the blockinterleaver based on following Equation 34. That is, a bit group may bemapped to a QAM symbol depending on following Equation 34.

S _(demux_in(i)) ={b _(i)(0),b _(i)(1),b _(i)(2), . . . ,b_(i)(η_(MOD)−1)},

S _(demux_out(i)) ={c _(i)(0),c _(i)(1),c _(i)(2), . . . ,c_(i)(η_(MOD)−1)},

c _(i)(0)=b _(i)(i%η_(MOD)),c _(i)(1)=b _(i)((i+1)%η_(MOD)), . . . ,c_(i)(η_(MOD)−1)=b _(i)((i+η _(MOD))%η_(MOD))  (34)

In the above Equation 34, % represents a modulo operation, and η_(MOD)is a modulation order.

Further, i is a bit group index corresponding to a row index of theblock interleaver. That is, an output bit group S_(demux_out)(i) mappedto each of the QAM symbols may be cyclic-shifted in an S_(demux_in)(i)according to the bit group index i.

FIG. 22 illustrates an example of performing bit demultiplexing on16-non uniform constellation (16-NUC), that is, NUC 16-QAM. Theoperation may be continued until all bit groups are read in the blockinterleaver.

The bit demultiplexer 323 may perform the same operation as theoperations performed by the bit demultiplexers 219 and 322, on theadditional parity bits output from the additional parity generator 319,and output the block-interleaved and demultiplexed bits to theconstellation mapper 325.

The constellation mappers 221, 324 and 325 may map the bits output fromthe bit demultiplexers 219, 322 and 323 to constellation symbols,respectively.

That is, each of the constellation mappers 221, 324 and 325 may map theS_(demux_out)(i) to a cell word using constellation according to acorresponding mode. Here, the S_(demux_out)(i) may be configured of bitshaving the same number as the modulation order.

In detail, the constellation mappers 221, 324 and 325 may map bitsoutput from the bit demultiplexers 219, 322 and 323 to constellationsymbols using QPSK, 16-QAM, 64-QAM, the 256-QAM, etc., according to acorresponding mode.

In this case, the constellation mappers 221, 324 and 325 may use theNUC. That is, the constellation mappers 221, 324 and 325 may use NUC16-QAM, NUC 64-QAM or NUC 256-QAM. The modulation scheme applied to theL1-basic signaling and the L1-detail signaling according to acorresponding mode is shown in above Table 6.

The transmitter 100 may map the constellation symbols to a frame andtransmit the mapped symbols to the receiver 200.

In detail, the transmitter 100 may map the constellation symbolscorresponding to each of the L1-basic signaling and the L1-detailsignaling output from the constellation mappers 221 and 324, and map theconstellation symbols corresponding to the additional parity bits outputfrom the constellation mapper 325 to a preamble symbol of a frame.

In this case, the transmitter 100 may map the additional parity bitsgenerated based on the L1-detail signaling transmitted in the currentframe to a frame before the current frame.

That is, the transmitter 100 may map the LDPC codeword bits includingthe L1-basic signaling corresponding to the (i−1)-th frame to the(i−1)-th frame, maps the LDPC codeword bits including the L1-detailsignaling corresponding to the (i−1)-th frame to the (i−1)-th frame, andadditionally map the additional parity bits generated selected from theLDPC parity bits generated based on the L1-detail signalingcorresponding to the i-th frame to the (i−1)-th frame and may transmitthe mapped bits to the receiver 200.

In addition, the transmitter 100 may map data to the data symbols of theframe in addition to the L1 signaling and transmit the frame includingthe L1 signaling and the data to the receiver 200.

In this case, since the L1 signalings include signaling informationabout the data, the signaling about the data mapped to each data may bemapped to a preamble of a corresponding frame. For example, thetransmitter 100 may map the L1 signaling including the signalinginformation about the data mapped to the i-th frame to the i-th frame.

As a result, the receiver 200 may use the signaling obtained from theframe to receive the data from the corresponding frame for processing.

FIGS. 23 and 24 are block diagrams for describing a configuration of areceiver according to an exemplary embodiment.

In detail, as illustrated in FIG. 23, the receiver 200 may include aconstellation demapper 2310, a multiplexer 2320, a Log Likelihood Ratio(LLR) 2330, an LLR combiner 2340, a parity depermutator 2350, an LDPCdecoder 2360, a zero remover 2370, a BCH decoder 2380, and a descrambler2390 to process the L1-basic signaling.

Further, as illustrated in FIG. 24, the receiver 200 may includeconstellation demappers 2411 and 2412, multiplexers 2421 and 2422, anLLR inserter 2430, an LLR combiner 2440, a parity depermutator 2450, anLDPC decoder 2460, a zero remover 2470, a BCH decoder 2480, adescrambler 2490, and a desegmenter 2495 to process the L1-detailsignaling.

Here, the components illustrated in FIGS. 23 and 24 perform functionscorresponding to the functions of the components illustrated in FIGS. 7and 8, respectively, which is only an example, and in some cases, someof the components may be omitted and changed and other components may beadded.

The receiver 200 may acquire frame synchronization using a bootstrap ofa frame and receive L1-basic signaling from a preamble of the frameusing information for processing the L1-basic signaling included in thebootstrap.

Further, the receiver 200 may receive L1-detail signaling from thepreamble using information for processing the L1-detail signalingincluded in the L1-basic signaling, and receive broadcasting datarequired by a user from data symbols of the frame using the L1-detailsignaling.

Therefore, the receiver 200 may determine a mode used at the transmitter100 to process the L1-basic signaling and the L1-detail signaling, andprocess a signal received from the transmitter 100 according to thedetermined mode to receive the L1-basic signaling and the L1-detailsignaling. For this purpose, the receiver 200 may pre-store informationabout parameters used at the transmitter 100 to process the signalingaccording to corresponding modes.

As such, the L1-basic signaling and the L1-detail signaling may besequentially acquired from the preamble. In describing FIGS. 23 and 24,components performing common functions will be described together forconvenience of explanation.

The constellation demappers 2310, 2411 and 2412 demodulate a signalreceived from the transmitter 100.

In detail, the constellation demapppers 2310, 2411 and 2412 arecomponents corresponding to the constellation mappers 221, 324 and 325of the transmitter 100, respectively, and may demodulate the signalreceived from the transmitter 100 and generate values corresponding tobits transmitted from the transmitter 100.

That is, as described above, the transmitter 100 maps an LDPC codewordincluding the L1-basic signaling and the LDPC codeword including theL1-detail signaling to the preamble of a frame, and transmits the mappedLDPC codeword to the receiver 200. Further, in some cases, thetransmitter 100 may map additional parity bits to the preamble of aframe and transmit the mapped bits to the receiver 200.

As a result, the constellation demappers 2310 and 2411 may generatevalues corresponding to the LDPC codeword bits including the L1-basicsignaling and the LDPC codeword bits including the L1-detail signaling.Further, the constellation demapper 2412 may generate valuescorresponding to the additional parity bits.

For this purpose, the receiver 200 may pre-store information about amodulation scheme used by the transmitter 100 to modulate the L1-basicsignaling, the L1-detail signaling, and the additional parity bitsaccording to corresponding modes. Therefore, the constellation demappers2310, 2411 and 2412 may demodulate the signal received from thetransmitter 100 according to the corresponding modes to generate valuescorresponding to the LDPC codeword bits and the additional parity bits.

The value corresponding to a bit transmitted from the transmitter 100 isa value calculated based on probability that a received bit is 0 and 1,and instead, the probability itself may also be used as a valuecorresponding to each bit. The value may also be a Likelihood Ratio (LR)or an LLR value as another example.

In detail, an LR value may represent a ratio of probability that a bittransmitted from the transmitter 100 is 0 and probability that the bitis 1, and an LLR value may represent a value obtained by taking a log onprobability that the bit transmitted from the transmitter 100 is 0 andprobability that the bit is 1.

The foregoing example uses the LR value or the LLR value, which is onlyone example. According to another exemplary embodiment, the receivedsignal itself rather than the LR or LLR value may also be used.

The multiplexers 2320, 2421 and 2422 perform multiplexing on the LLRvalues output from the constellation demappers 2310, 2411 and 2412.

In detail, the multiplexers 2320, 2421 and 2422 are componentscorresponding to the bit demultiplexers 219, 322 and 323 of thetransmitter 100 and may perform operations corresponding to theoperations of the bit demultiplexers 219, 322 and 323, respectively.

For this purpose, the receiver 200 may pre-store information aboutparameters used for the transmitter 100 to perform demultiplexing andblock interleaving. Therefore, the multiplexers 2320, 2421 and 2422 mayreversely perform the demultiplexing and block interleaving operationsof the bit demultiplexers 219, 322, and 323 on the LLR valuecorresponding to a cell word to multiplex the LLR value corresponding tothe cell word in a bit unit.

The LLR inserters 2330 and 2430 may insert LLR values for the puncturingand shortening bits into the LLR values output from the multiplexers2320 and 2421, respectively. In this case, the LLR inserters 2330 and2430 may insert previously determined LLR values between the LLR valuesoutput from the multiplexers 2320 and 2421 or a head portion or an endportion thereof.

In detail, the LLR inserters 2330 and 2430 are components correspondingto the zero removers 218 and 321 and the puncturers 217 and 318 of thetransmitter 100, respectively, and may perform operations correspondingto the operations of the zero removers 218 and 321 and the puncturers217 and 318, respectively.

First, the LLR inserters 2330 and 2430 may insert LLR valuescorresponding to zero bits into a position where the zero bits in theLDPC codeword are padded. In this case, the LLR values corresponding tothe padded zero bits, that is, the shortened zero bits may be ∞ or −∞.However, ∞ or −∞ are a theoretical value but may actually be a maximumvalue or a minimum value of the LLR value used in the receiver 200.

For this purpose, the receiver 200 may pre-store information aboutparameters and/or patterns used for the transmitter 100 to pad the zerobits according to corresponding modes. Therefore, the LLR inserters 2330and 2430 may determine positions where the zero bits in the LDPCcodeword are padded according to the corresponding the modes, and insertthe LLR values corresponding to the shortened zero bits intocorresponding positions.

Further, the LLR inserters 2330 and 2430 may insert the LLR valuescorresponding to the punctured bits into the positions of the puncturedbits in the LDPC codeword. In this case, the LLR values corresponding tothe punctured bits may be 0.

For this purpose, the receiver 200 may pre-store information aboutparameters and/or patterns used for the transmitter 100 to performpuncturing according to corresponding modes. Therefore, the LLRinserters 2330 and 2430 may determine the lengths of the punctured LDPCparity bits according to the corresponding modes, and insertcorresponding LLR values into the positions where the LDPC parity bitsare punctured.

When the additional parity bits selected from the punctured bits amongthe additional parity bits, the LLR inserter 2430 may insert LLR valuescorresponding to the received additional parity bits, not an LLR value‘0’ for the punctured bit, into the positions of the punctured bits.

The LLR combiners 2340 and 2440 may combine, that is, a sum the LLRvalues output from the LLR inserters 2330 and 2430 and the LLR valueoutput from the multiplexer 2422. However, the LLR combiners 2340 and2440 serve to update LLR values for specific bits into more correctvalues. However, the LLR values for the specific bits may also bedecoded from the received LLR values without the LLR combiners 2340 and2440, and therefore, in some cases, the LLR combiners 2340 and 2440 maybe omitted.

In detail, the LLR combiner 2340 is a component corresponding to therepeater 216 of the transmitter 100, and may perform an operationcorresponding to the operation of the repeater 216. Alternatively, theLLR combiner 2440 is a component corresponding to the repeater 317 andthe additional parity generator 319 of the transmitter 100 and mayperform operations corresponding to the operations of the repeater 317and the additional parity generator 319.

First, the LLR combiners 2340 and 2440 may combine LLR valuescorresponding to the repetition bits with other LLR values. Here, theother LLR values may be bits which are a basis of generating therepetition bits by the transmitter 100, that is, LLR values for the LDPCparity bits selected as the repeated object.

That is, as described above, the transmitter 100 selects bits from theLDPC parity bits and repeats the selected bits between the LDPCinformation bits and the LDPC parity bits generated by LDPC encoding,and transmits the repetition bits to the receiver 200.

As a result, the LLR values for the LDPC parity bits may be formed ofthe LLR values for the repeated LDPC parity bits and the LLR values forthe non-repeated LDPC parity bits, that is, the LDPC parity bitsgenerated by the LDPC encoding. Therefore, the LLR combiners 2340 and2440 may combine the LLR values for the same LDPC parity bits.

For this purpose, the receiver 200 may pre-store information aboutparameters used for the transmitter 100 to perform the repetitionaccording to corresponding modes. As a result, the LLR combiners 2340and 2440 may determine the lengths of the repeated LDPC parity bits,determine the positions of the bits which are a basis of the repetition,and combine the LLR values for the repeated LDPC parity bits with theLLR values for the LDPC parity bits which are a basis of the repetitionand generated by the LDPC encoding.

For example, as illustrated in FIGS. 25 and 26, the LLR combiners 2340and 2440 may combine LLR values for repeated LDPC parity bits with LLRvalues for LDPC parity bits which are a basis of the repetition andgenerated by the LDPC encoding.

When LPDC parity bits are repeated n times, the LLR combiners 2340 and2440 may combine LLR values for bits at the same position at n times orless.

For example, FIG. 25 illustrates a case in which some of LDPC paritybits other than punctured bits are repeated once. In this case, the LLRcombiners 2340 and 2440 may combine LLR values for the repeated LDPCparity bits with LLR values for the LDPC parity bits generated by theLDPC encoding, and then, output the combined LLR values or output theLLR values for the received repeated LDPC parity bits or the LLR valuesfor the received LDPC parity bits generated by the LDPC encoding withoutcombining them.

As another example, FIG. 26 illustrates a case in which some of thetransmitted LDPC parity bits, which are not punctured, are repeatedtwice, the remaining portions are repeated once, and the punctured LDPCparity bits are repeated once.

In this case, the LLR combiners 2340 and 2440 may process the remainingportion and the punctured bits which are repeated once by the samescheme as described above. However, the LLR combiners 2340 and 2440 mayprocess the portion repeated twice as follows. In this case, forconvenience of description, one of the two portions generated byrepeating some of the LDPC parity bits twice is referred to as a firstportion and the other is referred to as the second portion.

In detail, the LLR combiners 2340 and 2440 may combine LLR values foreach of the first and second portions with LLR values for the LDPCparity bits. Alternatively, the LLR combiners 2340 and 2440 may combinethe LLR values for the first portion with the LLR values for the LDPCparity bits, combine the LLR values for the second portion with the LLRvalues for the LDPC parity bits, or combine the LLR values for the firstportion with the LLR values for the second portion. Alternatively, theLLR combiners 2340 and 2440 may output the LLR values for the firstportion, the LLR values for the second portion, the LLR values for theremaining portion, and punctured bits, without separate combination.

Further, the LLR combiner 2440 may combine LLR values corresponding toadditional parity bits with other LLR values. Here, the other LLR valuesmay be the LDPC parity bits which are a basis of the generation of theadditional parity bits by the transmitter 100, that is, the LLR valuesfor the LDPC parity bits selected for generation of the additionalparity bits.

That is, as described above, the transmitter 100 may map additionalparity bits for L1-detail signaling transmitted in a current frame to aprevious frame and transmit the mapped bits to the receiver 200.

In this case, the additional parity bits may include LDPC parity bitswhich are punctured and are not transmitted in the current frame, and insome cases, may further include LDPC parity bits transmitted in thecurrent frame.

As a result, the LLR combiner 2440 may combine LLR values for theadditional parity bits received through the current frame with LLRvalues inserted into the positions of the punctured LDPC parity bits inthe LDPC codeword received through the next frame and LLR values for theLDPC parity bits received through the next frame.

For this purpose, the receiver 200 may pre-store information aboutparameters and/or patterns used for the transmitter 100 to generate theadditional parity bits according to corresponding modes. As a result,the LLR combiner 2440 may determine the lengths of the additional paritybits, determine the positions of the LDPC parity bits which are a basisof generation of the additional parity bits, and combine the LLR valuesfor the additional parity bits with the LLR values for the LDPC paritybits which are a basis of generation of the additional parity bits.

The parity depermutators 2350 and 2450 may depermutate the LLR valuesoutput from the LLR combiners 2340 and 2440, respectively.

In detail, the parity depermutators 2350 and 2450 are componentscorresponding to the parity permutators 215 and 316 of the transmitter100, and may perform operations corresponding to the operations of theparity permutators 215 and 316, respectively.

For this purpose, the receiver 200 may pre-store information aboutparameters and/or patterns used for the transmitter 100 to performgroup-wise interleaving and parity interleaving according tocorresponding modes. Therefore, the parity depermutators 2350 and 2450may reversely perform the group-wise interleaving and parityinterleaving operations of the parity permutators 215 and 316 on the LLRvalues corresponding to the LDPC codeword bits, that is, performgroup-wise deinterleaving and parity deinterleaving operations toperform the parity depermutation on the LLR values corresponding to theLDPC codeword bits, respectively.

The LDPC decoders 2360 and 2460 may perform LDPC decoding based on theLLR values output from the parity depermutators 2250 and 2350,respectively.

In detail, the LDPC decoders 2360 and 2460 are components correspondingto the LDPC encoders 214 and 315 of the transmitter 100 and may performoperations corresponding to the operations of the LDPC encoders 214 and315, respectively.

For this purpose, the receiver 200 may pre-store information aboutparameters used for the transmitter 100 to perform the LDPC encodingaccording to corresponding modes. Therefore, the LDPC decoders 2360 and2460 may perform the LDPC decoding based on the LLR values output fromthe parity depermutators 2350 and 2450 according to the correspondingmodes.

For example, the LDPC decoders 2360 and 2460 may perform the LDPCdecoding based on the LLR values output from the parity depermutators2350 and 2450 by iterative decoding based on a sum-product algorithm andoutput error-corrected bits depending on the LDPC decoding.

The zero removers 2370 and 2470 may remove zero bits from the bitsoutput from the LDPC decoders 2360 and 2460, respectively.

In detail, the zero removers 2370 and 2470 are components correspondingto the zero padders 213 and 314 of the transmitter 100 and may performoperations corresponding to the operations of the zero padders 213 and314, respectively.

For this purpose, the receiver 200 may pre-store information aboutparameters and/or patterns used for the transmitter 100 to pad the zerobits according to corresponding modes. As a result, the zero removers2370 and 2470 may remove the zero bits padded by the zero padders 213and 314 from the bits output from the LDPC decoders 2360 and 2460,respectively.

The BCH decoders 2380 and 2480 may perform BCH decoding on the bitsoutput from the zero removers 2370 and 2470, respectively.

In detail, the BCH decoders 2380 and 2480 are components correspondingto the BCH encoders 212 and 313 of the transmitter 100 and may performthe operations corresponding to the BCH encoders 212 and 313.

For this purpose, the receiver 200 may pre-store the information aboutparameters used for the transmitter 100 to perform BCH encoding. As aresult, the BCH decoders 2380 and 2480 may correct errors by performingthe BCH decoding on the bits output from the zero removers 2370 and 2470and output the error-corrected bits.

The descramblers 2390 and 2490 may descramble the bits output from theBCH decoders 2380 and 2480, respectively.

In detail, the descramblers 2390 and 2490 are components correspondingto the scramblers 211 and 312 of the transmitter 100 and may performoperations corresponding to the operations of the scramblers 211 and312.

For this purpose, the receiver 200 may pre-store information about theparameters used for the transmitter 100 to perform the scrambling. As aresult, the descramblers 2390 and 2490 may descramble the bits outputfrom the BCH decoders 2380 and 2480 and output them, respectively.

As a result, L1-basic signaling transmitted from the transmitter 100 maybe recovered. Further, when the transmitter 100 does not performsegmentation on L1-detail signaling, the L1-detail signaling transmittedfrom the transmitter 100 may also be recovered.

However, when the transmitter 100 performs the segmentation on theL1-detail signaling, the desegmenter 2495 may desegment the bits outputfrom the descrambler 2390.

In detail, the desegmenter 2495 is a component corresponding to thesegmenter 311 of the transmitter 100 and may perform an operationcorresponding to the operation of the segmenter 311.

For this purpose, the receiver 200 may pre-store information aboutparameters used for the transmitter 100 to perform the segmentation. Asa result, the desegmenter 2495 may combine the bits output from thedescrambler 2490, that is, the segments for the L1-detail signaling torecover the L1-detail signaling before the segmentation.

The information about the length of the L1 signaling is provided asillustrated in FIG. 27. Therefore, the receiver 200 may calculate thelength of the L1-detail signaling and the length of the additionalparity bits.

Referring to FIG. 27, since the L1-basic signaling provides informationabout L1-detail total cells, the receiver 200 needs to calculate thelength of the L1-detail signaling and the lengths of the additionalparity bits.

In detail, when L1B_L1 Detail_additional_parity_mode of the L1-basicsignaling is not 0, since the information on the givenL1B_L1_Detail_total_cells represents a total cell length(=N_(L1_detail_total)cells)), the receiver 200 may calculate the lengthN_(L1_detail_cells) of the L1-detail signaling and the lengthN_(AP_total_cells) of the additional parity bits based on followingEquations 35 to 37.

$\begin{matrix}{N_{L\; 1{\_ {FEC}}{\_ {cells}}} = {\frac{N_{outer} + N_{repeat} + N_{{ldpc}\_ {parity}} - N_{punc}}{\eta_{MOD}} = \frac{N_{FEC}}{\eta_{MOD}}}} & (35) \\{N_{L\; 1{\_ {detail}}{\_ {cells}}} - {N_{L\; 1{{D\_}{FECFRAME}}} \times N_{L\; 1{\_ {FEC}}{\_ {cells}}}}} & (36) \\{N_{{{AP}\_ {total}}{\_ {cells}}} = {N_{L\; 1{\_ {detail}}{\_ {tota}l}{\_ {cells}}} - N_{L\; 1{\_ {detail}}{\_ {cells}}}}} & (37)\end{matrix}$

In this case, based on above Equations 35 to 37, an N_(AP_total_cells)value may be obtained based on an N_(L1_detail_total_cells) value whichmay be obtained from the information about the L1B_L1 Detail_total_cellsof the L1-basic signaling, N_(FEC), the N_(L1D_FECFRAME), and themodulation order η_(MOD). As an example, N_(AP_total_cells) may becalculated based on following Equation 38.

$\begin{matrix}{N_{{{AP}\_ {total}}{\_ {cells}}} = {N_{L\; 1{\_ {detail}}{\_ {tota}l}{\_ {cells}}} - {N_{L\; 1{{D\_}{FECFRAME}}} \times \frac{N_{FEC}}{\eta_{MOD}}}}} & (38)\end{matrix}$

A syntax, and field semantics of the L1-basic signaling field are asfollowing Table 15.

TABLE 15 Syntax # of bits Format L1_Basic_signaling( ) {L1B_L1_Detail_size_bits 16 uimsbf L1B_L1_Detail_fec_type 3 uimsbfL1B_L1_Detail_additional_parity_mode 2 uimsbf L1B_L1_Detail_total_cells19 uimsbf L1B_Reserved ? uimsbf L1B_crc 32 uimsbf {

As a result, the receiver 200 may perform an operation of a receiver forthe additional parity bits in a next frame based on the additionalparity bits transmitted to the N_(AP_total_cells) cell among thereceived L1 detail cells.

FIG. 28 is a flow chart for describing a method for parity permutationaccording to an exemplary embodiment.

First, parity bits are generated by encoding input bits (S2610).

Next, the parity bits are interleaved and a plurality of bit groupsconfiguring the interleaved parity bits are group-wise interleaved toperform parity permutation (S2620).

Further, some of the parity permutated parity bits are punctured(S2630).

In S2620, the group-wise interleaving may be performed on the pluralityof bit groups configuring the LDPC parity bits interleaved based onabove Equation 11 and Table 4 or 5.

In this case, the interleaved parity bits are divided into the pluralityof bit groups and the order of the plurality of bit groups may bechanged based on above Equation 11 and above Table 4 or 5 to perform thegroup-wise interleaving.

In step S2610, 6480 input bits may be encoded at a code rate of 6/15 togenerate 9720 parity bits and generate an LDPC codeword formed of theinput bits and the parity bits. Next, the LDPC codeword in which some ofthe LDPC parity bits are punctured may be mapped to constellationsymbols by 64-QAM to be transmitted to the receiver 200.

The detailed methods for performing the parity permutation based onabove Equation 11 and above Table 4 or 5 has been described above, andthus, duplicate descriptions are omitted.

A non-transitory computer readable medium in which a program executingthe various methods according to the above exemplary embodiments arestored may be provided, according to an exemplary embodiment.

The non-transitory computer readable medium is not a medium that storesdata therein for a while, such as a register, a cache, a memory, or thelike, but means a medium that semi-permanently stores data therein andis readable by a device. In detail, various applications or programsdescribed above may be stored and provided in the non-transitorycomputer readable medium such as a compact disk (CD), a digitalversatile disk (DVD), a hard disk, a Blu-ray disk, a universal serialbus (USB), a memory card, a read only memory (ROM), or the like.

At least one of the components, elements, modules or units representedby a block as illustrated in FIGS. 1, 7, 8, 23 and 24 may be embodied asvarious numbers of hardware, software and/or firmware structures thatexecute respective functions described above, according to an exemplaryembodiment. For example, at least one of these components, elements,modules or units may use a direct circuit structure, such as a memory, aprocessor, a logic circuit, a look-up table, etc. that may execute therespective functions through controls of one or more microprocessors orother control apparatuses. Also, at least one of these components,elements, modules or units may be specifically embodied by a module, aprogram, or a part of code, which contains one or more executableinstructions for performing specified logic functions, and executed byone or more microprocessors or other control apparatuses. Also, at leastone of these components, elements, modules or units may further includeor implemented by a processor such as a central processing unit (CPU)that performs the respective functions, a microprocessor, or the like.Two or more of these components, elements, modules or units may becombined into one single component, element, module or unit whichperforms all operations or functions of the combined two or morecomponents, elements, modules or units. Also, at least part of functionsof at least one of these components, elements, modules or units may beperformed by another of these components, elements, modules or units.Further, although a bus is not illustrated in the above block diagrams,communication between the components, elements, modules or units may beperformed through the bus. Functional aspects of the above exemplaryembodiments may be implemented in algorithms that execute on one or moreprocessors. Furthermore, the components, elements, modules or unitsrepresented by a block or processing steps may employ any number ofrelated art techniques for electronics configuration, signal processingand/or control, data processing and the like.

Although the exemplary embodiments of inventive concept have beenillustrated and described hereinabove, the inventive concept is notlimited to the above-mentioned exemplary embodiments, but may bevariously modified by those skilled in the art to which the inventiveconcept pertains without departing from the scope and spirit of theinventive concept as disclosed in the accompanying claims. For example,the exemplary embodiments are described in relation with BCH encodingand decoding and LDPC encoding and decoding. However, these embodimentsdo not limit the inventive concept to only a particular encoding anddecoding, and instead, the inventive concept may be applied to differenttypes of encoding and decoding with necessary modifications. Thesemodifications should also be understood to fall within the scope of theinventive concept.

What is claimed is:
 1. A receiving apparatus being operable in a modeamong a plurality of modes, the receiving apparatus comprising: areceiver configured to receive a signal from a transmitting apparatus; ademodulator configured to demodulate the signal to generate values basedon 64-quadrature amplitude modulation (QAM) of the mode; an inserterconfigured to insert predetermined values into the values; a paritydepermutator configured to group the values and the insertedpredetermined values by a number of values of each of a plurality ofgroups and deinterleave the plurality of groups based on a permutationorder of the mode; and a decoder configured to decode values of thedeinterleaved plurality of groups based on a low density parity check(LDPC) code having a code rate being 6/15 and a code length being 16200bits, wherein the signal is generated based on encoding of informationbits in the transmitting apparatus, wherein the plurality of groups aredeinterleaved based on a following equation:Y _(j) =X _(j) for 0≤j<K _(ldpc)/360,Y _(πp(j)) =X _(j) for K _(ldpc)/360≤j<N _(group), where Y_(j)represents a j-th bit group among the deinterleaved plurality of groups,X_(j) represents a j-th bit group among the plurality of groups,K_(ldpc) represents a number of the information bits, N_(group)represents a number of the plurality of groups, and π_(p)(j) representsthe permutation order, and wherein the permutation order is representedas follows: Order of deinterleaving π_(p)(j) (18 ≤ j < 45) π_(p)(18)π_(p)(19) π_(p)(20) π_(p)(21) π_(p)(22) π_(p)(23) π_(p)(24) π_(p)(25)π_(p)(26) π_(p)(27) π_(p)(28) π_(p)(29) π_(p)(30) π_(p)(31) N_(group)π_(p)(32) π_(p)(33) π_(p)(34) π_(p)(35) π_(p)(36) π_(p)(37) π_(p)(38)π_(p)(39) π_(p)(40) π_(p)(41) π_(p)(42) π_(p)(43) π_(p)(44) 45 19 37 3326 40 43 22 29 24 35 44 31 27 20 21 39 25 42 34 18 32 38 23 30 28 36 41


2. The receiving apparatus of claim 1, wherein each of the plurality ofgroups comprises 360 values.
 3. A receiving method of a receivingapparatus being operable in a mode among a plurality of modes, thereceiving method comprising: receiving a signal from a transmittingapparatus; demodulating the signal to generate values based on64-quadrature amplitude modulation (QAM) of the mode; insertingpredetermined values into the values; grouping the values and theinserted predetermined values by a number of values of each of aplurality of groups; deinterleaving the plurality of groups based on apermutation order of the mode; and decoding values of the deinterleavedplurality of groups based on a low density parity check (LDPC) codehaving a code rate being 6/15 and a code length being 16200 bits,wherein the signal is generated based on encoding of information bits inthe transmitting apparatus, wherein the plurality of groups aredeinterleaved based on a following equation:Y _(j) =X _(j) for 0≤j<K _(ldpc)/360,Y _(πp(j)) =X _(j) for K _(ldpc)/360≤j<N _(group), where Y_(j)represents a j-th bit group among the deinterleaved plurality of groups,X_(j) represents a j-th bit group among the plurality of groups,K_(ldpc) represents a number of the information bits, N_(group)represents a number of the plurality of groups, and π_(p)(j) representsthe permutation order, and wherein the permutation order is representedas follows: Order of deinterleaving π_(p)(j) (18 ≤ j < 45) π_(p)(18)π_(p)(19) π_(p)(20) π_(p)(21) π_(p)(22) π_(p)(23) π_(p)(24) π_(p)(25)π_(p)(26) π_(p)(27) π_(p)(28) π_(p)(29) π_(p)(30) π_(p)(31) N_(group)π_(p)(32) π_(p)(33) π_(p)(34) π_(p)(35) π_(p)(36) π_(p)(37) π_(p)(38)π_(p)(39) π_(p)(40) π_(p)(41) π_(p)(42) π_(p)(43) π_(p)(44) 45 19 37 3326 40 43 22 29 24 35 44 31 27 20 21 39 25 42 34 18 32 38 23 30 28 36 41


4. The receiving method of claim 3, wherein each of the plurality ofgroups comprises 360 values.